Skip to content

Commit

Permalink
fix: clear staging table
Browse files Browse the repository at this point in the history
  • Loading branch information
MichaelTaylor3D committed May 10, 2024
1 parent 70f09e8 commit 75cbca0
Showing 1 changed file with 28 additions and 17 deletions.
45 changes: 28 additions & 17 deletions src/tasks/sync-registries.js
Original file line number Diff line number Diff line change
Expand Up @@ -385,23 +385,34 @@ const syncOrganizationAudit = async (organization) => {
}

if (organization.orgUid === homeOrg?.orgUid) {
const stagingUuid = [
'unit',
'project',
'units',
'projects',
].includes(modelKey)
? primaryKeyValue
: undefined;

if (stagingUuid) {
afterCommitCallbacks.push(async () => {
logger.info(`DELETING STAGING: ${stagingUuid}`);
await Staging.destroy({
where: { uuid: stagingUuid },
});
});
}
afterCommitCallbacks.push(async () => {
logger.info(`ATTEMPTING TO TRUNCATE STAGING TABLE`);

let success = false;
let attempts = 0;
const maxAttempts = 5; // Set a maximum number of attempts to avoid infinite loops

while (!success && attempts < maxAttempts) {
try {
await Staging.truncate();
success = true; // If truncate succeeds, set success to true to exit the loop
logger.info('STAGING TABLE TRUNCATED SUCCESSFULLY');
} catch (error) {
attempts++;
logger.error(
`TRUNCATION FAILED ON ATTEMPT ${attempts}: ${error.message}`,
);
if (attempts < maxAttempts) {
logger.info('WAITING 1 SECOND BEFORE RETRYING...');
await new Promise((resolve) => setTimeout(resolve, 1000)); // Wait for 1 second
} else {
logger.error(
'MAXIMUM TRUNCATION ATTEMPTS REACHED, GIVING UP',
);
}
}
}
});
}
}

Expand Down

0 comments on commit 75cbca0

Please sign in to comment.