You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 13, 2025. It is now read-only.
We have a few cases in the topcoder-x-processor where multiple events can come in quickly, before the initial challenge has been created. Challenge creation through the TC Challenge API can take awhile, so if the processor tries to process an assignment event before the challenge has been created, it will attempt to create another challenge in the mean time.
What happens is that we end up with a bunch of duplicate challenges in TC Direct:
Suggested fix
What we suggest doing is this:
When a challenge API creation call is made, already have the mapping created in the issues table in the DB. We can add a new status field and fill it with appropriate states, like:
challenge_creation_pending
challenge_creation_failed
challenge_creation_successful
When we get assignment or other update events, they can first check the status of the associated issue mapping. If the status is not challenge_creation_successful, they can retry after a set amount of time, which we already have the capability of doing
If challenge creation fails, we can retry again
Validate fix
After the fix has been applied, no duplicate tickets should be created under any normal circumstances.
The text was updated successfully, but these errors were encountered:
Current problem
We have a few cases in the topcoder-x-processor where multiple events can come in quickly, before the initial challenge has been created. Challenge creation through the TC Challenge API can take awhile, so if the processor tries to process an assignment event before the challenge has been created, it will attempt to create another challenge in the mean time.
What happens is that we end up with a bunch of duplicate challenges in TC Direct:
Suggested fix
What we suggest doing is this:
issues
table in the DB. We can add a newstatus
field and fill it with appropriate states, like:challenge_creation_pending
challenge_creation_failed
challenge_creation_successful
When we get assignment or other update events, they can first check the status of the associated issue mapping. If the status is not
challenge_creation_successful
, they can retry after a set amount of time, which we already have the capability of doingIf challenge creation fails, we can retry again
Validate fix
After the fix has been applied, no duplicate tickets should be created under any normal circumstances.
The text was updated successfully, but these errors were encountered: