@boopkit/cap-background-jobs 0.2.4 → 0.2.6
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-queue.service.d.ts","sourceRoot":"","sources":["../src/message-queue.service.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAmBrE,QAAA,MAAM,mBAAmB;;;;;;CAMxB,CAAC;AAEF,eAAe,mBAAmB,CAAC;AAEnC;;;;GAIG;AACH,iBAAS,IAAI,IAAI,IAAI,CAQpB;AAED;;;;GAIG;AACH,iBAAe,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"message-queue.service.d.ts","sourceRoot":"","sources":["../src/message-queue.service.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAmBrE,QAAA,MAAM,mBAAmB;;;;;;CAMxB,CAAC;AAEF,eAAe,mBAAmB,CAAC;AAEnC;;;;GAIG;AACH,iBAAS,IAAI,IAAI,IAAI,CAQpB;AAED;;;;GAIG;AACH,iBAAe,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CA0BxE;AAED,4BAA4B;AAC5B,UAAU,UAAU;IAClB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;GAcG;AAEH,iBAAe,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA6EhH;AAED,2DAA2D;AAC3D,iBAAe,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAwBpC"}
|
|
@@ -12,7 +12,7 @@ function getQueuePrefix() { return process.env.QUEUE_PREFIX ?? ''; }
|
|
|
12
12
|
function getMaxRetries() { return parseInt(process.env.MAX_MESSAGE_RETRIES ?? '5', 10); }
|
|
13
13
|
/** All open connections tracked for shutdown cleanup. */
|
|
14
14
|
const connections = [];
|
|
15
|
-
/** Lazy-initialized publish connection and channel. */
|
|
15
|
+
/** Lazy-initialized publish connection and confirm channel. */
|
|
16
16
|
let publishConnection = null;
|
|
17
17
|
let publishChannel = null;
|
|
18
18
|
const MessageQueueService = {
|
|
@@ -44,7 +44,6 @@ async function publish(queue, payload) {
|
|
|
44
44
|
const queueName = prefixedName(queue);
|
|
45
45
|
try {
|
|
46
46
|
const channel = await getPublishChannel();
|
|
47
|
-
await channel.assertQueue(queueName, { durable: true });
|
|
48
47
|
const body = Buffer.from(JSON.stringify(payload));
|
|
49
48
|
const ok = channel.sendToQueue(queueName, body, {
|
|
50
49
|
persistent: true,
|
|
@@ -54,6 +53,8 @@ async function publish(queue, payload) {
|
|
|
54
53
|
// Channel buffer full — wait for drain
|
|
55
54
|
await new Promise((resolve) => channel.once('drain', resolve));
|
|
56
55
|
}
|
|
56
|
+
// Wait for broker confirmation before returning
|
|
57
|
+
await channel.waitForConfirms();
|
|
57
58
|
return true;
|
|
58
59
|
}
|
|
59
60
|
catch (err) {
|
|
@@ -186,7 +187,7 @@ function prefixedName(name) {
|
|
|
186
187
|
const prefix = getQueuePrefix();
|
|
187
188
|
return prefix ? `${prefix}/${name}` : name;
|
|
188
189
|
}
|
|
189
|
-
/** Lazy-create or return the existing publish channel. */
|
|
190
|
+
/** Lazy-create or return the existing publish confirm channel. */
|
|
190
191
|
async function getPublishChannel() {
|
|
191
192
|
if (publishChannel)
|
|
192
193
|
return publishChannel;
|
|
@@ -195,7 +196,7 @@ async function getPublishChannel() {
|
|
|
195
196
|
publishConnection = conn;
|
|
196
197
|
conn.on('error', () => resetPublishConnection());
|
|
197
198
|
conn.on('close', () => resetPublishConnection());
|
|
198
|
-
publishChannel = await conn.
|
|
199
|
+
publishChannel = await conn.createConfirmChannel();
|
|
199
200
|
return publishChannel;
|
|
200
201
|
}
|
|
201
202
|
/** Clear cached publish connection so the next call reconnects. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-queue.service.js","sourceRoot":"","sources":["../src/message-queue.service.ts"],"names":[],"mappings":";AAAA,qEAAqE;;;;;AAErE,sDAA8B;AAG9B,MAAM,eAAe,GAAG,IAAI,CAAC;AAC7B,MAAM,cAAc,GAAG,KAAK,CAAC;AAE7B,oEAAoE;AACpE,SAAS,cAAc,KAAa,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;AAC5E,SAAS,aAAa,KAAa,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAEjG,yDAAyD;AACzD,MAAM,WAAW,GAAmB,EAAE,CAAC;AAEvC
|
|
1
|
+
{"version":3,"file":"message-queue.service.js","sourceRoot":"","sources":["../src/message-queue.service.ts"],"names":[],"mappings":"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"}
|