Skip to content

Commit 95dffe6

Browse files
authored
chore: delay member identity conflict errored results (CM-994) (#3858)
Signed-off-by: Uroš Marolt <uros@marolt.me>
1 parent 3c530df commit 95dffe6

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

services/apps/data_sink_worker/src/service/dataSink.service.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,22 @@ export default class DataSinkService extends LoggerBase {
9797
}`
9898
}
9999

100+
if (errorData.errorMessage.includes('uix_memberIdentities_platform_value_type_verified')) {
101+
const delaySeconds = Math.floor(Math.random() * (120 - 10 + 1) + 10) * 60
102+
const until = addSeconds(new Date(), delaySeconds)
103+
this.log.warn(
104+
{ until: until.toISOString(), delayMinutes: delaySeconds / 60 },
105+
'Delaying result due to member identity uniqueness conflict!',
106+
)
107+
await this.repo.delayResult(
108+
resultInfo.id,
109+
until,
110+
errorData,
111+
resultExists ? undefined : resultInfo,
112+
)
113+
return
114+
}
115+
100116
if (
101117
!(error instanceof UnrepeatableError) &&
102118
resultInfo.retries + 1 <= WORKER_SETTINGS().maxStreamRetries

0 commit comments

Comments
 (0)