@ercworldio/blockchain-shared 1.0.8 → 1.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/chains/networks_prod-ab120.json +1 -1
- package/build/services/db/multisig/MultisigService.d.ts +1 -0
- package/build/services/db/multisig/MultisigService.d.ts.map +1 -1
- package/build/services/db/multisig/MultisigService.js +9 -0
- package/build/services/db/timelock/ScheduleTransactionService.d.ts +17 -3
- package/build/services/db/timelock/ScheduleTransactionService.d.ts.map +1 -1
- package/build/services/db/timelock/ScheduleTransactionService.js +37 -4
- package/package.json +1 -1
|
@@ -57,6 +57,7 @@ declare class MultisigService {
|
|
|
57
57
|
* is met. Op type 3 is implied (no p_operation_type arg).
|
|
58
58
|
*/
|
|
59
59
|
static fn_upsert_admin_withdrawal_signature(pool: Pool, blockchain: string, chainId: string, escrow_address: string, request_id: number, signer_address: string, v?: number | null, r?: string | null, s?: string | null, signature?: string | null, type_data_hash?: string | null): Promise<UpsertAdminWithdrawalSignatureResult>;
|
|
60
|
+
static fn_get_admin_withdrawal_request(pool: Pool, requestId: number): Promise<AdminWithdrawalRequestRow>;
|
|
60
61
|
/** Lists admin-withdrawal requests (all filters optional), each with its embedded signatures array. */
|
|
61
62
|
static fn_get_admin_withdrawal_requests(pool: Pool, blockchain?: string | null, chainId?: string | null, status?: AdminWithdrawalStatus | null): Promise<AdminWithdrawalRequestRow[]>;
|
|
62
63
|
/** Cancels a pending/approved request — only while it has not been broadcast (tx_hash IS NULL). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultisigService.d.ts","sourceRoot":"","sources":["../../../../src/services/db/multisig/MultisigService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MultisigService.d.ts","sourceRoot":"","sources":["../../../../src/services/db/multisig/MultisigService.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE1B,OAAO,EACH,0BAA0B,EAC1B,6BAA6B,EAC7B,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,4BAA4B,EAC5B,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,gCAAgC,EAChC,iCAAiC,EACjC,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,iCAAiC,EACjC,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,EACzB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,oCAAoC,EACpC,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EACjC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGhE;;;GAGG;AACH,cAAM,eAAe;IAMjB,6EAA6E;WAChE,iCAAiC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAS9J,0FAA0F;WAC7E,mCAAmC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAc9O,gEAAgE;WACnD,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAS1I,gFAAgF;WACnE,yBAAyB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAS/P,kEAAkE;WACrD,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAS9I,gFAAgF;WACnE,2BAA2B,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IActM,iFAAiF;WACpE,iCAAiC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAS9J,uFAAuF;WAC1E,mCAAmC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;WAezT,6BAA6B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,iCAAiC,GAAG,OAAO,CAAC,gCAAgC,EAAE,CAAC;WAW/H,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC;WAS7G,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,2BAA2B,GAAG,OAAO,CAAC,0BAA0B,CAAC;WAW1G,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAe1H,oGAAoG;WACvF,+BAA+B,CACxC,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,kBAAkB,EACjC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,UAAU,GAAE,MAAM,GAAG,IAAW,GACjC,OAAO,CAAC,wBAAwB,CAAC;IASpC,6HAA6H;WAChH,iCAAiC,CAC1C,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,CAAC,GAAE,MAAM,GAAG,IAAW,EACvB,CAAC,GAAE,MAAM,GAAG,IAAW,EACvB,CAAC,GAAE,MAAM,GAAG,IAAW,EACvB,SAAS,GAAE,MAAM,GAAG,IAAW,EAC/B,eAAe,GAAE,MAAM,GAAG,IAAW,EACrC,cAAc,GAAE,MAAM,GAAG,IAAW,GACrC,OAAO,CAAC,iCAAiC,CAAC;IAS7C,oGAAoG;WACvF,6BAA6B,CACtC,IAAI,EAAE,IAAI,EACV,UAAU,GAAE,MAAM,GAAG,IAAW,EAChC,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,MAAM,GAAE,kBAAkB,GAAG,IAAW,EACxC,aAAa,GAAE,kBAAkB,GAAG,IAAW,GAChD,OAAO,CAAC,sBAAsB,EAAE,CAAC;IASpC,0CAA0C;WAC7B,+BAA+B,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAS/G,+GAA+G;WAClG,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAShI;;;;;;OAMG;WACU,wBAAwB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAazL;;;;;OAKG;WACU,kCAAkC,CAC3C,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,2BAA2B,CAAC;IASvC;;;;OAIG;WACU,oCAAoC,CAC7C,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,CAAC,GAAE,MAAM,GAAG,IAAW,EACvB,CAAC,GAAE,MAAM,GAAG,IAAW,EACvB,CAAC,GAAE,MAAM,GAAG,IAAW,EACvB,SAAS,GAAE,MAAM,GAAG,IAAW,EAC/B,cAAc,GAAE,MAAM,GAAG,IAAW,GACrC,OAAO,CAAC,oCAAoC,CAAC;WASnC,+BAA+B,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAW/G,uGAAuG;WAC1F,gCAAgC,CACzC,IAAI,EAAE,IAAI,EACV,UAAU,GAAE,MAAM,GAAG,IAAW,EAChC,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,MAAM,GAAE,qBAAqB,GAAG,IAAW,GAC5C,OAAO,CAAC,yBAAyB,EAAE,CAAC;IASvC,mGAAmG;WACtF,kCAAkC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IASrH,iHAAiH;WACpG,+BAA+B,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAStI;;;;OAIG;WACU,6BAA6B,CACtC,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,8BAA8B,CAAC;CAS7C;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -223,6 +223,15 @@ class MultisigService {
|
|
|
223
223
|
return result.rows[0].fn_upsert_admin_withdrawal_signature;
|
|
224
224
|
});
|
|
225
225
|
}
|
|
226
|
+
static fn_get_admin_withdrawal_request(pool, requestId) {
|
|
227
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
228
|
+
const result = yield pool.query(`
|
|
229
|
+
SELECT * from multisig.crypto_admin_withdrawal_requests
|
|
230
|
+
WHERE id = $1
|
|
231
|
+
`, [requestId]);
|
|
232
|
+
return result.rows[0];
|
|
233
|
+
});
|
|
234
|
+
}
|
|
226
235
|
/** Lists admin-withdrawal requests (all filters optional), each with its embedded signatures array. */
|
|
227
236
|
static fn_get_admin_withdrawal_requests(pool_1) {
|
|
228
237
|
return __awaiter(this, arguments, void 0, function* (pool, blockchain = null, chainId = null, status = null) {
|
|
@@ -15,10 +15,24 @@ declare class ScheduleTransactionService {
|
|
|
15
15
|
/**
|
|
16
16
|
* Locks and returns schedule-transaction jobs currently in the "confirming" status for the
|
|
17
17
|
* given blockchain. Unlike the "queued" lockers, this does NOT transition the job's status -
|
|
18
|
-
* the caller decides whether to mark it "completed"
|
|
19
|
-
*
|
|
18
|
+
* the caller decides whether to mark it "completed" once the on-chain transaction has been
|
|
19
|
+
* checked. A job is only eligible while its retry_count is below max_attempts - once a job
|
|
20
|
+
* has failed to confirm that many times it is left alone (still "confirming") rather than
|
|
21
|
+
* picked up again, since re-submitting an already-broadcast withdrawal is not safe.
|
|
20
22
|
*/
|
|
21
|
-
static get_and_lock_confirming_jobs_with_details: (pool: Pool, blockchain: BlockchainType, limit?: number, lock_minutes?: number, lock_metadata?: ClaimJobLockMetadata) => Promise<ConfirmingScheduleJob[]>;
|
|
23
|
+
static get_and_lock_confirming_jobs_with_details: (pool: Pool, blockchain: BlockchainType, limit?: number, lock_minutes?: number, max_attempts?: number, lock_metadata?: ClaimJobLockMetadata) => Promise<ConfirmingScheduleJob[]>;
|
|
24
|
+
/**
|
|
25
|
+
* Records a failed confirmation attempt (reverted, RPC error, or never showed up on-chain)
|
|
26
|
+
* without transitioning the job's status - it stays "confirming" so it is never picked back
|
|
27
|
+
* up by the "queued" scheduler. Only retry_count/error_message move, so
|
|
28
|
+
* get_and_lock_confirming_jobs_with_details' max_attempts cap is what eventually stops
|
|
29
|
+
* further confirmation checks.
|
|
30
|
+
*/
|
|
31
|
+
static mark_confirmation_attempt_failed: (pool: Pool, jobs: {
|
|
32
|
+
requestId: number;
|
|
33
|
+
operationType: OperationType;
|
|
34
|
+
error_message?: string;
|
|
35
|
+
}[]) => Promise<void>;
|
|
22
36
|
/**
|
|
23
37
|
* Requeues all jobs in the given status to "queued"
|
|
24
38
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScheduleTransactionService.d.ts","sourceRoot":"","sources":["../../../../src/services/db/timelock/ScheduleTransactionService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACH,uBAAuB,EACvB,iCAAiC,EACjC,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,cAAM,0BAA0B;IAE5B,MAAM,CAAC,2BAA2B,GAAU,MAAM,IAAI,EAAE,QAAO,MAAW,EAAE,YAAW,MAAY,EAAE,gBAAe,oBAA0F,KAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CA4CjP;IAGD,2GAA2G;IAC3G,MAAM,CAAC,wCAAwC,GAC3C,MAAM,IAAI,EACV,QAAO,MAAW,EAClB,YAAW,MAAY,EACvB,gBAAe,oBAA0F,KAC1G,OAAO,CAAC,iCAAiC,EAAE,CAAC,CAqH9C;IAGD,qFAAqF;IACrF,MAAM,CAAC,6CAA6C,GAChD,MAAM,IAAI,EACV,QAAO,MAAW,EAClB,YAAW,MAAY,EACvB,gBAAe,oBAA0F,KAC1G,OAAO,CAAC,iCAAiC,EAAE,CAAC,CAQ9C;IAGD
|
|
1
|
+
{"version":3,"file":"ScheduleTransactionService.d.ts","sourceRoot":"","sources":["../../../../src/services/db/timelock/ScheduleTransactionService.ts"],"names":[],"mappings":"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"}
|
|
@@ -176,10 +176,12 @@ ScheduleTransactionService.get_and_lock_available_jobs_with_details_depr = (pool
|
|
|
176
176
|
/**
|
|
177
177
|
* Locks and returns schedule-transaction jobs currently in the "confirming" status for the
|
|
178
178
|
* given blockchain. Unlike the "queued" lockers, this does NOT transition the job's status -
|
|
179
|
-
* the caller decides whether to mark it "completed"
|
|
180
|
-
*
|
|
179
|
+
* the caller decides whether to mark it "completed" once the on-chain transaction has been
|
|
180
|
+
* checked. A job is only eligible while its retry_count is below max_attempts - once a job
|
|
181
|
+
* has failed to confirm that many times it is left alone (still "confirming") rather than
|
|
182
|
+
* picked up again, since re-submitting an already-broadcast withdrawal is not safe.
|
|
181
183
|
*/
|
|
182
|
-
ScheduleTransactionService.get_and_lock_confirming_jobs_with_details = (pool_1, blockchain_1, ...args_1) => __awaiter(void 0, [pool_1, blockchain_1, ...args_1], void 0, function* (pool, blockchain, limit = 10, lock_minutes = 5, lock_metadata = { lock_owner: "schedule-tx-worker", lock_reason: "confirm-schedule-tx" }) {
|
|
184
|
+
ScheduleTransactionService.get_and_lock_confirming_jobs_with_details = (pool_1, blockchain_1, ...args_1) => __awaiter(void 0, [pool_1, blockchain_1, ...args_1], void 0, function* (pool, blockchain, limit = 10, lock_minutes = 5, max_attempts = 5, lock_metadata = { lock_owner: "schedule-tx-worker", lock_reason: "confirm-schedule-tx" }) {
|
|
183
185
|
const res = yield pool.query(`
|
|
184
186
|
WITH candidates AS (
|
|
185
187
|
SELECT j.id
|
|
@@ -188,6 +190,7 @@ ScheduleTransactionService.get_and_lock_confirming_jobs_with_details = (pool_1,
|
|
|
188
190
|
WHERE sjs.status = 'confirming'
|
|
189
191
|
AND j.tx_hash IS NOT NULL
|
|
190
192
|
AND j.blockchain = $1
|
|
193
|
+
AND j.retry_count < $6
|
|
191
194
|
AND (j.lock_expires_at IS NULL OR j.lock_expires_at < NOW())
|
|
192
195
|
ORDER BY j.sent_at ASC NULLS LAST
|
|
193
196
|
LIMIT $2
|
|
@@ -217,9 +220,39 @@ ScheduleTransactionService.get_and_lock_confirming_jobs_with_details = (pool_1,
|
|
|
217
220
|
j.sent_at AS "sentAt",
|
|
218
221
|
j.updated_at AS "updatedAt",
|
|
219
222
|
j.retry_count AS "retryCount";
|
|
220
|
-
`, [blockchain, limit, lock_minutes, lock_metadata.lock_owner, lock_metadata.lock_reason]);
|
|
223
|
+
`, [blockchain, limit, lock_minutes, lock_metadata.lock_owner, lock_metadata.lock_reason, max_attempts]);
|
|
221
224
|
return res.rows;
|
|
222
225
|
});
|
|
226
|
+
/**
|
|
227
|
+
* Records a failed confirmation attempt (reverted, RPC error, or never showed up on-chain)
|
|
228
|
+
* without transitioning the job's status - it stays "confirming" so it is never picked back
|
|
229
|
+
* up by the "queued" scheduler. Only retry_count/error_message move, so
|
|
230
|
+
* get_and_lock_confirming_jobs_with_details' max_attempts cap is what eventually stops
|
|
231
|
+
* further confirmation checks.
|
|
232
|
+
*/
|
|
233
|
+
ScheduleTransactionService.mark_confirmation_attempt_failed = (pool, jobs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
234
|
+
if (jobs.length === 0)
|
|
235
|
+
return;
|
|
236
|
+
const requestIds = jobs.map(j => j.requestId);
|
|
237
|
+
const operationTypes = jobs.map(j => j.operationType);
|
|
238
|
+
const errorMessages = jobs.map(j => { var _b; return (_b = j.error_message) !== null && _b !== void 0 ? _b : null; });
|
|
239
|
+
yield pool.query(`
|
|
240
|
+
UPDATE multisig.schedule_transaction_jobs AS t
|
|
241
|
+
SET
|
|
242
|
+
retry_count = retry_count + 1,
|
|
243
|
+
error_message = COALESCE(c.error_message, t.error_message),
|
|
244
|
+
last_error_at = CURRENT_TIMESTAMP,
|
|
245
|
+
updated_at = CURRENT_TIMESTAMP
|
|
246
|
+
FROM (
|
|
247
|
+
SELECT
|
|
248
|
+
UNNEST($1::int[]) AS request_id,
|
|
249
|
+
UNNEST($2::int[]) AS operation_type,
|
|
250
|
+
UNNEST($3::text[]) AS error_message
|
|
251
|
+
) AS c
|
|
252
|
+
WHERE t.request_id = c.request_id
|
|
253
|
+
AND t.operation_type = c.operation_type
|
|
254
|
+
`, [requestIds, operationTypes, errorMessages]);
|
|
255
|
+
});
|
|
223
256
|
/**
|
|
224
257
|
* Requeues all jobs in the given status to "queued"
|
|
225
258
|
*/
|