@platformatic/job-queue 0.2.0 → 0.3.0

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,10 +1,10 @@
1
1
  import {} from 'iovalkey';
2
2
  import { EventEmitter } from 'node:events';
3
3
  import { readFileSync } from 'node:fs';
4
- import { dirname, join } from 'node:path';
5
- import { fileURLToPath } from 'node:url';
4
+ import { join } from 'node:path';
6
5
  import { loadOptionalDependency } from "./utils.js";
7
- const __dirname = dirname(fileURLToPath(import.meta.url));
6
+ import { abstractLogger } from "../utils/logging.js";
7
+ const EXPIRING_VALUE_HEADER_SIZE = 8; // First 8 bytes are the expireAt timestamp in milliseconds (Uint64 BE)
8
8
  /**
9
9
  * Redis/Valkey storage implementation
10
10
  */
@@ -18,9 +18,11 @@ export class RedisStorage {
18
18
  #eventEmitter = new EventEmitter({ captureRejections: true });
19
19
  #notifyEmitter = new EventEmitter({ captureRejections: true });
20
20
  #eventSubscription = false;
21
+ #logger;
21
22
  constructor(config = {}) {
22
23
  this.#url = config.url ?? process.env.REDIS_URL ?? 'redis://localhost:6379';
23
24
  this.#keyPrefix = config.keyPrefix ?? 'jq:';
25
+ this.#logger = (config.logger ?? abstractLogger).child({ component: 'redis-storage', keyPrefix: this.#keyPrefix });
24
26
  // Disable max listeners warning for high-throughput scenarios
25
27
  this.#eventEmitter.setMaxListeners(0);
26
28
  this.#notifyEmitter.setMaxListeners(0);
@@ -47,6 +49,25 @@ export class RedisStorage {
47
49
  #workersKey() {
48
50
  return this.#key('workers');
49
51
  }
52
+ #encodeExpiringValue(value, ttlMs) {
53
+ const buffer = Buffer.allocUnsafe(EXPIRING_VALUE_HEADER_SIZE + value.length);
54
+ buffer.writeBigInt64BE(BigInt(Date.now() + ttlMs));
55
+ value.copy(buffer, EXPIRING_VALUE_HEADER_SIZE);
56
+ return buffer;
57
+ }
58
+ #decodeExpiringValue(value) {
59
+ if (value.length < EXPIRING_VALUE_HEADER_SIZE) {
60
+ return null;
61
+ }
62
+ const expiresAt = Number(value.readBigInt64BE(0));
63
+ if (!Number.isFinite(expiresAt) || expiresAt <= 0) {
64
+ return null;
65
+ }
66
+ return {
67
+ payload: value.subarray(EXPIRING_VALUE_HEADER_SIZE),
68
+ expiresAt
69
+ };
70
+ }
50
71
  async connect() {
51
72
  if (this.#client)
52
73
  return;
@@ -82,7 +103,7 @@ export class RedisStorage {
82
103
  this.#eventSubscription = false;
83
104
  }
84
105
  async #loadScripts() {
85
- const scriptsDir = join(__dirname, '..', '..', 'redis-scripts');
106
+ const scriptsDir = join(import.meta.dirname, '..', '..', 'redis-scripts');
86
107
  const enqueueScript = readFileSync(join(scriptsDir, 'enqueue.lua'), 'utf8');
87
108
  const completeScript = readFileSync(join(scriptsDir, 'complete.lua'), 'utf8');
88
109
  const failScript = readFileSync(join(scriptsDir, 'fail.lua'), 'utf8');
@@ -169,20 +190,44 @@ export class RedisStorage {
169
190
  return result;
170
191
  }
171
192
  async setResult(id, result, ttlMs) {
172
- await this.#client.hset(this.#resultsKey(), id, result);
173
- // Note: HEXPIRE is not widely supported, so we set TTL on the whole hash
174
- // For production, consider using separate keys per result
193
+ await this.#client.hset(this.#resultsKey(), id, this.#encodeExpiringValue(result, ttlMs));
175
194
  }
176
195
  async getResult(id) {
177
196
  const result = await this.#client.hgetBuffer(this.#resultsKey(), id);
178
- return result;
197
+ if (!result) {
198
+ return null;
199
+ }
200
+ const decoded = this.#decodeExpiringValue(result);
201
+ if (!decoded) {
202
+ this.#logger.warn({ id, valueLength: result.length }, 'Failed to decode TTL envelope for result.');
203
+ // Backward compatibility for legacy entries stored without envelope
204
+ return result;
205
+ }
206
+ if (Date.now() > decoded.expiresAt) {
207
+ await this.#client.hdel(this.#resultsKey(), id);
208
+ return null;
209
+ }
210
+ return decoded.payload;
179
211
  }
180
212
  async setError(id, error, ttlMs) {
181
- await this.#client.hset(this.#errorsKey(), id, error);
213
+ await this.#client.hset(this.#errorsKey(), id, this.#encodeExpiringValue(error, ttlMs));
182
214
  }
183
215
  async getError(id) {
184
216
  const result = await this.#client.hgetBuffer(this.#errorsKey(), id);
185
- return result;
217
+ if (!result) {
218
+ return null;
219
+ }
220
+ const decoded = this.#decodeExpiringValue(result);
221
+ if (!decoded) {
222
+ this.#logger.warn({ id, valueLength: result.length }, 'Failed to decode TTL envelope for error.');
223
+ // Backward compatibility for legacy entries stored without envelope
224
+ return result;
225
+ }
226
+ if (Date.now() > decoded.expiresAt) {
227
+ await this.#client.hdel(this.#errorsKey(), id);
228
+ return null;
229
+ }
230
+ return decoded.payload;
186
231
  }
187
232
  async registerWorker(workerId, ttlMs) {
188
233
  await this.#client.hset(this.#workersKey(), workerId, Date.now().toString());
@@ -238,7 +283,8 @@ export class RedisStorage {
238
283
  async completeJob(id, message, workerId, result, resultTTL) {
239
284
  const timestamp = Date.now();
240
285
  const state = `completed:${timestamp}`;
241
- await this.#client.evalsha(this.#scriptSHAs.complete, 3, this.#jobsKey(), this.#resultsKey(), this.#processingKey(workerId), id, message, state, result, resultTTL.toString());
286
+ const encodedResult = this.#encodeExpiringValue(result, resultTTL);
287
+ await this.#client.evalsha(this.#scriptSHAs.complete, 3, this.#jobsKey(), this.#resultsKey(), this.#processingKey(workerId), id, message, state, encodedResult, resultTTL.toString());
242
288
  // Notify subscribers and publish event
243
289
  await this.notifyJobComplete(id, 'completed');
244
290
  await this.publishEvent(id, 'completed');
@@ -246,7 +292,8 @@ export class RedisStorage {
246
292
  async failJob(id, message, workerId, error, errorTTL) {
247
293
  const timestamp = Date.now();
248
294
  const state = `failed:${timestamp}`;
249
- await this.#client.evalsha(this.#scriptSHAs.fail, 3, this.#jobsKey(), this.#errorsKey(), this.#processingKey(workerId), id, message, state, error, errorTTL.toString());
295
+ const encodedError = this.#encodeExpiringValue(error, errorTTL);
296
+ await this.#client.evalsha(this.#scriptSHAs.fail, 3, this.#jobsKey(), this.#errorsKey(), this.#processingKey(workerId), id, message, state, encodedError, errorTTL.toString());
250
297
  // Notify subscribers and publish event
251
298
  await this.notifyJobComplete(id, 'failed');
252
299
  await this.publishEvent(id, 'failed');
@@ -1 +1 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/storage/redis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/storage/redis.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { Logger } from 'pino';
1
2
  import type { Storage } from './storage/types.ts';
2
3
  import type { Serde } from './serde/index.ts';
3
4
  /**
@@ -145,6 +146,8 @@ export interface QueueConfig<TPayload, TResult> {
145
146
  processingQueueTTL?: number;
146
147
  /** TTL for stored results and errors in ms (default: 3600000 = 1 hour) */
147
148
  resultTTL?: number;
149
+ /** Logger instance (default: abstract logger / no-op) */
150
+ logger?: Logger;
148
151
  }
149
152
  /**
150
153
  * Queue events (tuple format for EventEmitter)
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { Logger } from 'pino';
2
+ export declare function noop(): void;
3
+ export declare const abstractLogger: Logger;
4
+ export declare function ensureLoggableError(error: Error): Error;
5
+ //# sourceMappingURL=logging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAElC,wBAAgB,IAAI,SAAM;AAE1B,eAAO,MAAM,cAAc,EAAE,MAW5B,CAAA;AAED,wBAAgB,mBAAmB,CAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAYxD"}
@@ -0,0 +1,24 @@
1
+ export function noop() { }
2
+ export const abstractLogger = {
3
+ fatal: noop,
4
+ error: noop,
5
+ warn: noop,
6
+ info: noop,
7
+ debug: noop,
8
+ trace: noop,
9
+ // @ts-expect-error
10
+ child() {
11
+ return abstractLogger;
12
+ }
13
+ };
14
+ export function ensureLoggableError(error) {
15
+ Reflect.defineProperty(error, 'message', { enumerable: true });
16
+ if ('code' in error) {
17
+ Reflect.defineProperty(error, 'code', { enumerable: true });
18
+ }
19
+ if ('stack' in error) {
20
+ Reflect.defineProperty(error, 'stack', { enumerable: true });
21
+ }
22
+ return error;
23
+ }
24
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,IAAI,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,mBAAmB;IACnB,KAAK;QACH,OAAO,cAAc,CAAA;IACvB,CAAC;CACF,CAAA;AAED,MAAM,UAAU,mBAAmB,CAAE,KAAY;IAC/C,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IAE9D,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platformatic/job-queue",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "A reliable job queue with deduplication, request/response support, and pluggable storage",
5
5
  "homepage": "https://github.com/platformatic/job-queue",
6
6
  "author": "Platformatic Inc. <oss@platformatic.dev> (https://platformatic.dev)",
@@ -25,7 +25,9 @@
25
25
  "type": "module",
26
26
  "exports": "./dist/index.js",
27
27
  "types": "./dist/index.d.ts",
28
- "dependencies": {},
28
+ "dependencies": {
29
+ "pino": "^10.3.1"
30
+ },
29
31
  "optionalDependencies": {
30
32
  "fast-write-atomic": "^0.4.0",
31
33
  "iovalkey": "^0.2.0"