pg-boss 11.0.3 → 11.0.5

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pg-boss",
3
- "version": "11.0.3",
3
+ "version": "11.0.5",
4
4
  "description": "Queueing jobs in Postgres from Node.js like a boss",
5
5
  "main": "./src/index.js",
6
6
  "engines": {
package/src/manager.js CHANGED
@@ -637,24 +637,24 @@ class Manager extends EventEmitter {
637
637
  const { table, partition } = await this.getQueueCache(name)
638
638
 
639
639
  if (partition) {
640
- const sql = plans.deleteAllJobs(this.config.schema, table)
641
- await this.db.executeSql(sql, [name])
642
- } else {
643
640
  const sql = plans.truncateTable(this.config.schema, table)
644
641
  await this.db.executeSql(sql)
642
+ } else {
643
+ const sql = plans.deleteAllJobs(this.config.schema, table)
644
+ await this.db.executeSql(sql, [name])
645
645
  }
646
646
  }
647
647
 
648
648
  async getQueueStats (name) {
649
649
  Attorney.assertQueueName(name)
650
650
 
651
- const { table } = await this.getQueueCache(name)
651
+ const queue = await this.getQueueCache(name)
652
652
 
653
- const sql = plans.getQueueStats(this.config.schema, table, [name])
653
+ const sql = plans.getQueueStats(this.config.schema, queue.table, [name])
654
654
 
655
655
  const { rows } = await this.db.executeSql(sql)
656
656
 
657
- return rows.at(0) || null
657
+ return Object.assign(queue, rows.at(0) || {})
658
658
  }
659
659
 
660
660
  async getJobById (name, id, options = {}) {
@@ -680,7 +680,9 @@ class Manager extends EventEmitter {
680
680
  return options.db
681
681
  }
682
682
 
683
- assert(this.db._pgbdb && this.db.opened, 'Database connection is not opened')
683
+ if (this.db._pgbdb) {
684
+ assert(this.db.opened, 'Database connection is not opened')
685
+ }
684
686
 
685
687
  return this.db
686
688
  }
package/types.d.ts CHANGED
@@ -17,7 +17,7 @@ declare namespace PgBoss {
17
17
  singleton: 'singleton',
18
18
  stately: 'stately'
19
19
  }
20
-
20
+
21
21
  interface Db {
22
22
  executeSql(text: string, values: any[]): Promise<{ rows: any[] }>;
23
23
  }
@@ -59,7 +59,7 @@ declare namespace PgBoss {
59
59
  interface QueueOptions {
60
60
  expireInSeconds?: number;
61
61
  retentionSeconds?: number;
62
- deleteAfterSeconds?: number;
62
+ deleteAfterSeconds?: number;
63
63
  retryLimit?: number;
64
64
  retryDelay?: number;
65
65
  retryBackoff?: boolean;
@@ -97,7 +97,7 @@ declare namespace PgBoss {
97
97
  deferredCount: number;
98
98
  queuedCount: number;
99
99
  activeCount: number;
100
- completedCount: number;
100
+ totalCount: number
101
101
  table: number;
102
102
  createdOn: Date;
103
103
  updatedOn: Date;
@@ -236,6 +236,9 @@ declare class PgBoss extends EventEmitter {
236
236
  on(event: "wip", handler: (data: PgBoss.Worker[]) => void): this;
237
237
  off(event: "wip", handler: (data: PgBoss.Worker[]) => void): this;
238
238
 
239
+ on(event: "stopped", handler: () => void): this;
240
+ off(event: "stopped", handler: () => void): this;
241
+
239
242
  start(): Promise<PgBoss>;
240
243
  stop(options?: PgBoss.StopOptions): Promise<void>;
241
244
 
@@ -297,16 +300,18 @@ declare class PgBoss extends EventEmitter {
297
300
 
298
301
  getJobById<T>(name: string, id: string, options?: PgBoss.ConnectionOptions): Promise<PgBoss.JobWithMetadata<T> | null>;
299
302
 
300
- createQueue(name: string, options?: PgBoss.Queue): Promise<void>;
301
- updateQueue(name: string, options?: PgBoss.Queue): Promise<void>;
303
+ createQueue(name: string, options?: Omit<PgBoss.Queue, 'name'>): Promise<void>;
304
+ createQueue(options: PgBoss.Queue): Promise<void>;
305
+ updateQueue(name: string, options?: Omit<PgBoss.Queue, 'name'>): Promise<void>;
306
+ updateQueue(options: PgBoss.Queue): Promise<void>;
302
307
  deleteQueue(name: string): Promise<void>;
303
308
  getQueues(): Promise<PgBoss.QueueResult[]>;
304
309
  getQueue(name: string): Promise<PgBoss.QueueResult | null>;
305
- getQueueStats(name: string): Promise<number>;
310
+ getQueueStats(name: string): Promise<PgBoss.QueueResult>;
306
311
 
307
312
  supervise(name?: string): Promise<void>;
308
- isInstalled(): Promise<Boolean>;
309
- schemaVersion(): Promise<Number>;
313
+ isInstalled(): Promise<boolean>;
314
+ schemaVersion(): Promise<number>;
310
315
 
311
316
  schedule(name: string, cron: string, data?: object, options?: PgBoss.ScheduleOptions): Promise<void>;
312
317
  unschedule(name: string, key?: string): Promise<void>;