Skip to content
This repository was archived by the owner on Jan 23, 2025. It is now read-only.

Commit d68ed47

Browse files
resync v4 es feeder
1 parent 62ea2d8 commit d68ed47

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/services/ProcessorService.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -699,6 +699,8 @@ async function processMessage (message) {
699699
}
700700

701701
if (message.payload.status && challenge) {
702+
// Whether we need to sync v4 ES again
703+
let needSyncV4ES = false
702704
// logger.info(`The status has changed from ${challenge.currentStatus} to ${message.payload.status}`)
703705
if (message.payload.status === constants.challengeStatuses.Active && challenge.currentStatus !== constants.challengeStatuses.Active) {
704706
logger.info('Activating challenge...')
@@ -708,6 +710,7 @@ async function processMessage (message) {
708710
await metadataService.createOrUpdateMetadata(legacyId, 9, 'On', createdByUserId) // autopilot
709711
// Repost all challenge resource on Kafka so they will get created on legacy by the legacy-challenge-resource-processor
710712
await rePostResourcesOnKafka(challengeUuid, m2mToken)
713+
needSyncV4ES = true
711714
}
712715
if (message.payload.status === constants.challengeStatuses.Completed && challenge.currentStatus !== constants.challengeStatuses.Completed) {
713716
if (message.payload.task.isTask) {
@@ -718,6 +721,7 @@ async function processMessage (message) {
718721
const winnerId = _.find(message.payload.winners, winner => winner.placement === 1).userId
719722
logger.info(`Will close the challenge with ID ${legacyId}. Winner ${winnerId}!`)
720723
await closeChallenge(legacyId, winnerId)
724+
needSyncV4ES = true
721725
} else {
722726
logger.info('Challenge type is not a task.. Skip closing challenge...')
723727
}
@@ -726,9 +730,18 @@ async function processMessage (message) {
726730
if (!_.get(message.payload, 'task.isTask')) {
727731
const numOfReviewers = 2
728732
await syncChallengePhases(legacyId, message.payload.phases, createdByUserId, _.get(message, 'payload.legacy.selfService'), numOfReviewers)
733+
needSyncV4ES = true
729734
} else {
730735
logger.info('Will skip syncing phases as the challenge is a task...')
731736
}
737+
if (needSyncV4ES) {
738+
try {
739+
logger.info(`Resync V4 ES for the legacy challenge ${legacyId}`)
740+
await helper.forceV4ESFeeder(legacyId)
741+
} catch (e) {
742+
logger.warn(`Resync V4 - Failed to call V4 ES Feeder ${JSON.stringify(e)}`)
743+
}
744+
}
732745
}
733746
}
734747

0 commit comments

Comments
 (0)