@balena/pinejs 18.1.0-build-joshbwlng-tasks-47304ed479923f6db2384964f2c0f6da27e45cc5-3 → 18.1.0-build-joshbwlng-tasks-3d0d4d5d43b055cb336f1dfa12d30f415395ad39-1

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,14 +1,6 @@
1
1
  - commits:
2
- - subject: Add listener client reconnect logic
3
- hash: 47304ed479923f6db2384964f2c0f6da27e45cc5
4
- body: ""
5
- footer:
6
- Change-type: patch
7
- change-type: patch
8
- author: Josh Bowling
9
- nested: []
10
2
  - subject: Add async tasks
11
- hash: 627d6d7fa03d357ed34793368ed4289f708daea2
3
+ hash: 3d0d4d5d43b055cb336f1dfa12d30f415395ad39
12
4
  body: ""
13
5
  footer:
14
6
  Change-type: minor
@@ -17,7 +9,7 @@
17
9
  nested: []
18
10
  version: 18.1.0
19
11
  title: ""
20
- date: 2024-08-20T01:00:11.470Z
12
+ date: 2024-08-20T13:07:38.731Z
21
13
  - commits:
22
14
  - subject: Fix some lint warnings
23
15
  hash: 25abbf6a3f22ca6b984b8ec5a4b2aa3dcb71363f
package/CHANGELOG.md CHANGED
@@ -7,7 +7,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
7
7
  # v18.1.0
8
8
  ## (2024-08-20)
9
9
 
10
- * Add listener client reconnect logic [Josh Bowling]
11
10
  * Add async tasks [Josh Bowling]
12
11
 
13
12
  # v18.0.2
@@ -58,9 +58,6 @@ export interface Database extends BaseDatabase {
58
58
  executeSql: (this: Database, sql: Sql, bindings?: Bindings) => Promise<Result>;
59
59
  transaction: TransactionFn;
60
60
  readTransaction: TransactionFn;
61
- on?: (name: 'notification', fn: (...args: any[]) => Promise<void>, options?: {
62
- channel?: string;
63
- }) => void;
64
61
  }
65
62
  interface EngineParams {
66
63
  [engine: string]: (options: unknown) => Database;
@@ -519,54 +519,9 @@ if (maybePg != null) {
519
519
  `);
520
520
  }
521
521
  }
522
- async function listen(channel, fn) {
523
- let listenerClient = null;
524
- const reconnect = () => {
525
- if (listenerClient != null) {
526
- try {
527
- listenerClient.release();
528
- }
529
- catch (err) {
530
- }
531
- }
532
- setTimeout(() => {
533
- void listen(channel, fn);
534
- }, 1000);
535
- };
536
- try {
537
- listenerClient = await pool.connect();
538
- listenerClient.on('end', () => {
539
- reconnect();
540
- });
541
- listenerClient.on('notification', (msg) => {
542
- if (msg.channel === channel) {
543
- void fn(msg).catch((err) => {
544
- console.error(`Error handling message for '${channel}':`, err);
545
- });
546
- }
547
- });
548
- await listenerClient.query(`LISTEN "${channel}"`);
549
- }
550
- catch (err) {
551
- console.error(`Error setting up listener client for '${channel}':`, err);
552
- reconnect();
553
- }
554
- }
555
522
  return {
556
523
  engine: "postgres",
557
524
  executeSql: atomicExecuteSql,
558
- on: async (name, fn, options) => {
559
- if (name !== 'notification') {
560
- throw new Error(`Unsupported listener type: ${name}`);
561
- }
562
- else if (options?.channel == null) {
563
- throw new Error('Missing channel option for notification listener');
564
- }
565
- else if (options.channel.includes('"')) {
566
- throw new Error(`Invalid channel name for task LISTEN: ${options.channel}`);
567
- }
568
- await listen(options.channel, fn);
569
- },
570
525
  transaction: createTransaction(async (stackTraceErr, timeoutMS) => {
571
526
  const client = await pool.connect();
572
527
  const tx = new PostgresTx(client, false, stackTraceErr, timeoutMS);
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/database-layer/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/database-layer/db.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
1
  import Ajv from 'ajv';
2
2
  export declare const apiRoot = "tasks";
3
- export declare const channel = "pinejs$execute_task";
4
3
  export declare const ajv: Ajv;
@@ -3,9 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ajv = exports.channel = exports.apiRoot = void 0;
6
+ exports.ajv = exports.apiRoot = void 0;
7
7
  const ajv_1 = __importDefault(require("ajv"));
8
8
  exports.apiRoot = 'tasks';
9
- exports.channel = 'pinejs$execute_task';
10
9
  exports.ajv = new ajv_1.default();
11
10
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/tasks/common.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAGT,QAAA,OAAO,GAAG,OAAO,CAAC;AAGlB,QAAA,OAAO,GAAG,qBAAqB,CAAC;AAEhC,QAAA,GAAG,GAAG,IAAI,aAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/tasks/common.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAGT,QAAA,OAAO,GAAG,OAAO,CAAC;AAElB,QAAA,GAAG,GAAG,IAAI,aAAG,EAAE,CAAC"}
@@ -34,19 +34,6 @@ const common_1 = require("./common");
34
34
  const worker_1 = require("./worker");
35
35
  const modelText = require('./tasks.sbvr');
36
36
  const initSql = `
37
- CREATE OR REPLACE FUNCTION notify_execute_task()
38
- RETURNS TRIGGER AS $$
39
- BEGIN
40
- PERFORM pg_notify('${common_1.channel}', NEW.id::text);
41
- RETURN NEW;
42
- END;
43
- $$ LANGUAGE plpgsql;
44
-
45
- CREATE OR REPLACE TRIGGER execute_task_trigger
46
- AFTER INSERT ON task
47
- FOR EACH ROW WHEN (NEW.status = 'queued' AND NEW."is scheduled to execute on-time" IS NULL)
48
- EXECUTE FUNCTION notify_execute_task();
49
-
50
37
  CREATE INDEX IF NOT EXISTS idx_task_poll ON task USING btree (
51
38
  "is executed by-handler",
52
39
  "is scheduled to execute on-time" ASC,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tasks/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tasks/index.ts"],"names":[],"mappings":"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"}
@@ -181,7 +181,7 @@ class Worker {
181
181
  })();
182
182
  }
183
183
  async start() {
184
- if (module_1.sbvrUtils.db.engine !== 'postgres' || module_1.sbvrUtils.db.on == null) {
184
+ if (module_1.sbvrUtils.db.engine !== 'postgres') {
185
185
  throw new Error('Database does not support tasks, giving up on starting worker');
186
186
  }
187
187
  const tasksWithUnknownHandlers = await this.client.get({
@@ -203,18 +203,6 @@ class Worker {
203
203
  .map((task) => `${task.id}(${task.is_executed_by__handler})`)
204
204
  .join(', ')}`);
205
205
  }
206
- module_1.sbvrUtils.db.on('notification', async (msg) => {
207
- if (this.canExecute()) {
208
- await module_1.sbvrUtils.db.transaction(async (tx) => {
209
- const result = await module_1.sbvrUtils.db.executeSql(`SELECT ${selectColumns} FROM task AS t WHERE id = $1 FOR UPDATE SKIP LOCKED`, [msg.payload]);
210
- if (result.rows.length > 0) {
211
- await this.execute(result.rows[0], tx);
212
- }
213
- });
214
- }
215
- }, {
216
- channel: common_1.channel,
217
- });
218
206
  for (let i = 0; i < this.concurrency; i++) {
219
207
  this.poll();
220
208
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/tasks/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/tasks/worker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mDAAkD;AAElD,8CAAyD;AAEzD,qEAAuD;AACvD,uDAAsD;AACtD,kDAAkD;AAClD,qCAA+B;AA+B/B,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;IACpC,EAAE,EAAE,IAAI;IACR,wBAAwB,EAAE,yBAAyB;IACnD,gCAAgC,EAAE,iCAAiC;IACnE,mCAAmC,EAAE,oCAAoC;IACzE,eAAe,EAAE,eAAe;IAChC,eAAe,EAAE,eAAe;IAChC,qBAAqB,EAAE,sBAAsB;CACA,CAAC;KAC7C,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,SAAS,KAAK,GAAG,CAAC;KACjD,IAAI,CAAC,IAAI,CAAC,CAAC;AAKb,MAAa,MAAM;IAMW;IALtB,QAAQ,GAAgC,EAAE,CAAC;IACjC,WAAW,CAAS;IACpB,QAAQ,CAAS;IAC1B,SAAS,GAAG,CAAC,CAAC;IAEtB,YAA6B,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;QAChD,IAAI,CAAC,WAAW,GAAG,WAAQ,CAAC,gBAAgB,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,WAAQ,CAAC,eAAe,CAAC;IAC1C,CAAC;IAGO,UAAU;QACjB,OAAO,CACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAC1E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,IAAiB,EAAE,EAAS;QACjD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC;YAEJ,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC5D,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC;YAGjC,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,CAAC,MAAM,CAChB,EAAE,EACF,IAAI,EACJ,aAAa,EACb,QAAQ,EACR,4DAA4D,CAC5D,CAAC;gBACF,OAAO;YACR,CAAC;YAKD,IACC,OAAO,CAAC,QAAQ,IAAI,IAAI;gBACxB,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,+BAA+B,CAAC,EACtD,CAAC;gBACF,MAAM,IAAI,CAAC,MAAM,CAChB,EAAE,EACF,IAAI,EACJ,aAAa,EACb,QAAQ,EACR,0BAA0B,YAAG,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CACnE,CAAC;gBACF,OAAO;YACR,CAAC;YAGD,IAAI,MAAM,GAA2B,QAAQ,CAAC;YAC9C,IAAI,KAAyB,CAAC;YAC9B,IAAI,CAAC;gBACJ,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC;oBAChC,GAAG,EAAE,IAAI,yBAAY,CAAC,EAAE,CAAC;oBACzB,MAAM,EAAE,IAAI,CAAC,+BAA+B,IAAI,EAAE;iBAClD,CAAC,CAAC;gBACH,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;gBACxB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YACvB,CAAC;oBAAS,CAAC;gBACV,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAC3D,CAAC;QACF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YAEd,OAAO,CAAC,KAAK,CACZ,0BAA0B,IAAI,CAAC,EAAE,iBAAiB,IAAI,CAAC,uBAAuB,GAAG,EACjF,GAAG,CACH,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;gBAAS,CAAC;YACV,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;IACF,CAAC;IAGO,KAAK,CAAC,MAAM,CACnB,EAAS,EACT,IAAiB,EACjB,aAAmB,EACnB,MAA8B,EAC9B,YAAqB;QAErB,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QAC5C,MAAM,IAAI,GAA2B;YACpC,gBAAgB,EAAE,aAAa;YAC/B,cAAc,EAAE,IAAI,IAAI,EAAE;YAC1B,MAAM;YACN,aAAa,EAAE,YAAY;YAC3B,GAAG,CAAC,YAAY,IAAI,IAAI,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;SAC5D,CAAC;QAIF,IAAI,MAAM,KAAK,QAAQ,IAAI,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9D,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YAGvB,IAAI,CAAC,gCAAgC;gBACpC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QAGD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,QAAQ,EAAE,MAAM;YAChB,WAAW,EAAE;gBACZ,EAAE;gBACF,GAAG,EAAE,WAAW,CAAC,IAAI;aACrB;YACD,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI;SACJ,CAAC,CAAC;QAIH,IACC,IAAI,CAAC,MAAM,IAAI,IAAI;YACnB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7C,IAAI,CAAC,kCAAkC,IAAI,IAAI,EAC9C,CAAC;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACtB,QAAQ,EAAE,MAAM;gBAChB,WAAW,EAAE;oBACZ,EAAE;oBACF,GAAG,EAAE,WAAW,CAAC,IAAI;iBACrB;gBACD,OAAO,EAAE;oBACR,cAAc,EAAE,KAAK;iBACrB;gBACD,IAAI,EAAE;oBACL,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;oBAC/C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;oBACrD,+BAA+B,EAAE,IAAI,CAAC,+BAA+B;oBACrE,kCAAkC,EACjC,IAAI,CAAC,kCAAkC;iBACxC;aACD,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAGO,kBAAkB,CAAC,OAAe;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;IACrC,CAAC;IAIO,IAAI;QACX,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,KAAK,CAAC,KAAK,IAAI,EAAE;YAChB,IAAI,CAAC;gBACJ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;oBACxB,OAAO;gBACR,CAAC;gBACD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChD,MAAM,kBAAS,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC3C,MAAM,MAAM,GAAG,MAAM,kBAAS,CAAC,EAAE,CAAC,UAAU,CAC3C,UAAU,aAAa;;;wCAGW,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;sEAK5B,YAAY,CAAC,MAAM,GAAG,CAAC;;;;;qCAKxD,EAC/B,CAAC,GAAG,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAClD,CAAC;oBAGF,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAgB,EAAE,EAAE,CAAC,CAAC;wBACtD,QAAQ,GAAG,IAAI,CAAC;oBACjB,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;YACjD,CAAC;oBAAS,CAAC;gBACV,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACf,MAAM,IAAA,qBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACjC,CAAC;gBACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACb,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;IACN,CAAC;IAGM,KAAK,CAAC,KAAK;QAEjB,IAAI,kBAAS,CAAC,EAAE,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACd,+DAA+D,CAC/D,CAAC;QACH,CAAC;QAGD,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACtD,QAAQ,EAAE,MAAM;YAChB,WAAW,EAAE;gBACZ,GAAG,EAAE,WAAW,CAAC,IAAI;aACrB;YACD,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE;wBACL,uBAAuB,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;qBAC5D;iBACD;aACD;SACD,CAAC,CAAC;QACH,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACd,sCAAsC,wBAAwB;iBAC5D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,uBAAuB,GAAG,CAAC;iBAC5D,IAAI,CAAC,IAAI,CAAC,EAAE,CACd,CAAC;QACH,CAAC;QAGD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,EAAE,CAAC;QACb,CAAC;IACF,CAAC;CACD;AA1OD,wBA0OC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/pinejs",
3
- "version": "18.1.0-build-joshbwlng-tasks-47304ed479923f6db2384964f2c0f6da27e45cc5-3",
3
+ "version": "18.1.0-build-joshbwlng-tasks-3d0d4d5d43b055cb336f1dfa12d30f415395ad39-1",
4
4
  "main": "out/server-glue/module",
5
5
  "type": "commonjs",
6
6
  "repository": "git@github.com:balena-io/pinejs.git",
@@ -149,6 +149,6 @@
149
149
  "recursive": true
150
150
  },
151
151
  "versionist": {
152
- "publishedAt": "2024-08-20T01:00:12.194Z"
152
+ "publishedAt": "2024-08-20T13:07:39.446Z"
153
153
  }
154
154
  }
@@ -106,13 +106,6 @@ export interface Database extends BaseDatabase {
106
106
  ) => Promise<Result>;
107
107
  transaction: TransactionFn;
108
108
  readTransaction: TransactionFn;
109
- on?: (
110
- name: 'notification',
111
- fn: (...args: any[]) => Promise<void>,
112
- options?: {
113
- channel?: string;
114
- },
115
- ) => void;
116
109
  }
117
110
 
118
111
  interface EngineParams {
@@ -715,64 +708,9 @@ if (maybePg != null) {
715
708
  }
716
709
  }
717
710
 
718
- // Connect and listen for notifications
719
- async function listen(
720
- channel: string,
721
- fn: (...args: any[]) => Promise<void>,
722
- ) {
723
- let listenerClient: Pg.PoolClient | null = null;
724
-
725
- // Clean up and reconnect listener
726
- const reconnect = () => {
727
- if (listenerClient != null) {
728
- try {
729
- listenerClient.release();
730
- } catch (err) {
731
- // Ignore listener client release errors
732
- }
733
- }
734
- setTimeout(() => {
735
- void listen(channel, fn);
736
- }, 1000);
737
- };
738
-
739
- try {
740
- listenerClient = await pool.connect();
741
- listenerClient.on('end', () => {
742
- reconnect();
743
- });
744
- listenerClient.on('notification', (msg) => {
745
- if (msg.channel === channel) {
746
- void fn(msg).catch((err) => {
747
- console.error(`Error handling message for '${channel}':`, err);
748
- });
749
- }
750
- });
751
- await listenerClient.query(`LISTEN "${channel}"`);
752
- } catch (err) {
753
- console.error(
754
- `Error setting up listener client for '${channel}':`,
755
- err,
756
- );
757
- reconnect();
758
- }
759
- }
760
-
761
711
  return {
762
712
  engine: Engines.postgres,
763
713
  executeSql: atomicExecuteSql,
764
- on: async (name, fn, options) => {
765
- if (name !== 'notification') {
766
- throw new Error(`Unsupported listener type: ${name}`);
767
- } else if (options?.channel == null) {
768
- throw new Error('Missing channel option for notification listener');
769
- } else if (options.channel.includes('"')) {
770
- throw new Error(
771
- `Invalid channel name for task LISTEN: ${options.channel}`,
772
- );
773
- }
774
- await listen(options.channel, fn);
775
- },
776
714
  transaction: createTransaction(async (stackTraceErr, timeoutMS) => {
777
715
  const client = await pool.connect();
778
716
  const tx = new PostgresTx(client, false, stackTraceErr, timeoutMS);
@@ -3,7 +3,4 @@ import Ajv from 'ajv';
3
3
  // Root path for the tasks API
4
4
  export const apiRoot = 'tasks';
5
5
 
6
- // Channel name for triggering task executions
7
- export const channel = 'pinejs$execute_task';
8
-
9
6
  export const ajv = new Ajv();
@@ -4,7 +4,7 @@ import { tasks as tasksEnv } from '../config-loader/env';
4
4
  import { addPureHook } from '../sbvr-api/hooks';
5
5
  import * as sbvrUtils from '../sbvr-api/sbvr-utils';
6
6
  import type { ConfigLoader } from '../server-glue/module';
7
- import { ajv, apiRoot, channel } from './common';
7
+ import { ajv, apiRoot } from './common';
8
8
  import type { TaskHandler } from './worker';
9
9
  import { Worker } from './worker';
10
10
 
@@ -13,22 +13,8 @@ export type * from './tasks';
13
13
  // eslint-disable-next-line @typescript-eslint/no-var-requires
14
14
  const modelText: string = require('./tasks.sbvr');
15
15
 
16
- // Create trigger for handling new tasks
17
16
  // Create index for polling tasks table
18
17
  const initSql = `
19
- CREATE OR REPLACE FUNCTION notify_execute_task()
20
- RETURNS TRIGGER AS $$
21
- BEGIN
22
- PERFORM pg_notify('${channel}', NEW.id::text);
23
- RETURN NEW;
24
- END;
25
- $$ LANGUAGE plpgsql;
26
-
27
- CREATE OR REPLACE TRIGGER execute_task_trigger
28
- AFTER INSERT ON task
29
- FOR EACH ROW WHEN (NEW.status = 'queued' AND NEW."is scheduled to execute on-time" IS NULL)
30
- EXECUTE FUNCTION notify_execute_task();
31
-
32
18
  CREATE INDEX IF NOT EXISTS idx_task_poll ON task USING btree (
33
19
  "is executed by-handler",
34
20
  "is scheduled to execute on-time" ASC,
@@ -6,7 +6,7 @@ import type * as Db from '../database-layer/db';
6
6
  import * as permissions from '../sbvr-api/permissions';
7
7
  import { PinejsClient } from '../sbvr-api/sbvr-utils';
8
8
  import { sbvrUtils } from '../server-glue/module';
9
- import { ajv, channel } from './common';
9
+ import { ajv } from './common';
10
10
  import type { Task } from './tasks';
11
11
 
12
12
  interface TaskArgs {
@@ -49,8 +49,8 @@ const selectColumns = Object.entries({
49
49
  .map(([key, value]) => `t."${key}" AS "${value}"`)
50
50
  .join(', ');
51
51
 
52
- // The worker is responsible for executing tasks in the queue. It listens for
53
- // notifications and polls the database for tasks to execute. It will execute
52
+ // The worker is responsible for executing tasks in the queue.
53
+ // It polls the database for tasks to execute. It will execute
54
54
  // tasks in parallel up to a certain concurrency limit.
55
55
  export class Worker {
56
56
  public handlers: Record<string, TaskHandler> = {};
@@ -249,10 +249,10 @@ export class Worker {
249
249
  })();
250
250
  }
251
251
 
252
- // Start listening and polling for tasks
252
+ // Start polling for tasks
253
253
  public async start(): Promise<void> {
254
254
  // Tasks only support postgres for now
255
- if (sbvrUtils.db.engine !== 'postgres' || sbvrUtils.db.on == null) {
255
+ if (sbvrUtils.db.engine !== 'postgres') {
256
256
  throw new Error(
257
257
  'Database does not support tasks, giving up on starting worker',
258
258
  );
@@ -281,26 +281,6 @@ export class Worker {
281
281
  );
282
282
  }
283
283
 
284
- sbvrUtils.db.on(
285
- 'notification',
286
- async (msg) => {
287
- if (this.canExecute()) {
288
- await sbvrUtils.db.transaction(async (tx) => {
289
- const result = await sbvrUtils.db.executeSql(
290
- `SELECT ${selectColumns} FROM task AS t WHERE id = $1 FOR UPDATE SKIP LOCKED`,
291
- [msg.payload],
292
- );
293
- if (result.rows.length > 0) {
294
- await this.execute(result.rows[0] as PartialTask, tx);
295
- }
296
- });
297
- }
298
- },
299
- {
300
- channel,
301
- },
302
- );
303
-
304
284
  // Spawn children to poll for and execute tasks
305
285
  for (let i = 0; i < this.concurrency; i++) {
306
286
  this.poll();