(sequence: number, attempts: number, cause: Cause.Cause<any>)
| 222 | ) |
| 223 | } |
| 224 | const retry = (sequence: number, attempts: number, cause: Cause.Cause<any>) => { |
| 225 | elementIds.delete(sequence) |
| 226 | return sql` |
| 227 | UPDATE ${tableNameSql} |
| 228 | SET acquired_at = NULL, acquired_by = NULL, updated_at = ${sqlNow}, attempts = ${attempts}, last_failure = ${ |
| 229 | Cause.pretty(cause, { renderErrorCause: true }) |
| 230 | } |
| 231 | WHERE sequence = ${sequence} |
| 232 | AND acquired_by = ${workerIdSql} |
| 233 | `.pipe( |
| 234 | Effect.retry({ |
| 235 | times: 5, |
| 236 | schedule: Schedule.exponential(100, 1.5) |
| 237 | }), |
| 238 | Effect.orDie |
| 239 | ) |
| 240 | } |
| 241 | const interrupt = (ids: Array<number>) => { |
| 242 | for (const id of ids) { |
| 243 | elementIds.delete(id) |
no test coverage detected