bullmq 3.12.0 → 3.13.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.
Files changed (73) hide show
  1. package/dist/cjs/classes/child-pool.js +14 -92
  2. package/dist/cjs/classes/child-pool.js.map +1 -1
  3. package/dist/cjs/classes/child-processor.js +14 -11
  4. package/dist/cjs/classes/child-processor.js.map +1 -1
  5. package/dist/cjs/classes/child.js +216 -0
  6. package/dist/cjs/classes/child.js.map +1 -0
  7. package/dist/cjs/classes/index.js +2 -2
  8. package/dist/cjs/classes/index.js.map +1 -1
  9. package/dist/cjs/classes/job.js +5 -2
  10. package/dist/cjs/classes/job.js.map +1 -1
  11. package/dist/cjs/classes/main-base.js +45 -0
  12. package/dist/cjs/classes/main-base.js.map +1 -0
  13. package/dist/cjs/classes/main-worker.js +10 -0
  14. package/dist/cjs/classes/main-worker.js.map +1 -0
  15. package/dist/cjs/classes/main.js +10 -0
  16. package/dist/cjs/classes/main.js.map +1 -0
  17. package/dist/cjs/classes/sandbox.js +3 -4
  18. package/dist/cjs/classes/sandbox.js.map +1 -1
  19. package/dist/cjs/classes/scripts.js +5 -7
  20. package/dist/cjs/classes/scripts.js.map +1 -1
  21. package/dist/cjs/classes/worker.js +53 -48
  22. package/dist/cjs/classes/worker.js.map +1 -1
  23. package/dist/cjs/tsconfig-cjs.tsbuildinfo +1 -1
  24. package/dist/cjs/utils.js +4 -3
  25. package/dist/cjs/utils.js.map +1 -1
  26. package/dist/esm/classes/child-pool.d.ts +15 -14
  27. package/dist/esm/classes/child-pool.js +14 -92
  28. package/dist/esm/classes/child-pool.js.map +1 -1
  29. package/dist/esm/classes/child-processor.d.ts +3 -1
  30. package/dist/esm/classes/child-processor.js +15 -12
  31. package/dist/esm/classes/child-processor.js.map +1 -1
  32. package/dist/esm/classes/child.d.ts +36 -0
  33. package/dist/esm/classes/child.js +212 -0
  34. package/dist/esm/classes/child.js.map +1 -0
  35. package/dist/esm/classes/index.d.ts +0 -1
  36. package/dist/esm/classes/index.js +2 -2
  37. package/dist/esm/classes/index.js.map +1 -1
  38. package/dist/esm/classes/job.js +5 -2
  39. package/dist/esm/classes/job.js.map +1 -1
  40. package/dist/esm/classes/main-base.d.ts +4 -0
  41. package/dist/esm/classes/main-base.js +43 -0
  42. package/dist/esm/classes/main-base.js.map +1 -0
  43. package/dist/esm/classes/main-worker.d.ts +1 -0
  44. package/dist/esm/classes/main-worker.js +8 -0
  45. package/dist/esm/classes/main-worker.js.map +1 -0
  46. package/dist/esm/classes/main.d.ts +1 -0
  47. package/dist/esm/classes/main.js +8 -0
  48. package/dist/esm/classes/main.js.map +1 -0
  49. package/dist/esm/classes/sandbox.js +3 -4
  50. package/dist/esm/classes/sandbox.js.map +1 -1
  51. package/dist/esm/classes/scripts.d.ts +2 -2
  52. package/dist/esm/classes/scripts.js +5 -7
  53. package/dist/esm/classes/scripts.js.map +1 -1
  54. package/dist/esm/classes/worker.d.ts +0 -1
  55. package/dist/esm/classes/worker.js +53 -48
  56. package/dist/esm/classes/worker.js.map +1 -1
  57. package/dist/esm/interfaces/worker-options.d.ts +8 -0
  58. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  59. package/dist/esm/utils.d.ts +2 -3
  60. package/dist/esm/utils.js +3 -1
  61. package/dist/esm/utils.js.map +1 -1
  62. package/package.json +3 -3
  63. package/dist/cjs/classes/master.js +0 -39
  64. package/dist/cjs/classes/master.js.map +0 -1
  65. package/dist/cjs/classes/process-utils.js +0 -34
  66. package/dist/cjs/classes/process-utils.js.map +0 -1
  67. package/dist/esm/classes/master.js +0 -37
  68. package/dist/esm/classes/master.js.map +0 -1
  69. package/dist/esm/classes/process-utils.d.ts +0 -7
  70. package/dist/esm/classes/process-utils.js +0 -31
  71. package/dist/esm/classes/process-utils.js.map +0 -1
  72. /package/dist/cjs/classes/{master.d.ts → main-worker.d.ts} +0 -0
  73. /package/dist/{esm/classes/master.d.ts → cjs/classes/main.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"child-processor.js","sourceRoot":"","sources":["../../../src/classes/child-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"child-processor.js","sourceRoot":"","sources":["../../../src/classes/child-processor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ import { ChildProcess } from 'child_process';
5
+ import { Worker } from 'worker_threads';
6
+ import * as EventEmitter from 'events';
7
+ /**
8
+ * Child class
9
+ *
10
+ * This class is used to create a child process or worker thread, and allows using
11
+ * isolated processes or threads for processing jobs.
12
+ *
13
+ */
14
+ export declare class Child extends EventEmitter {
15
+ private mainFile;
16
+ processFile: string;
17
+ private opts;
18
+ childProcess: ChildProcess;
19
+ worker: Worker;
20
+ private _exitCode;
21
+ private _signalCode;
22
+ private _killed;
23
+ constructor(mainFile: string, processFile: string, opts?: {
24
+ useWorkerThreads: boolean;
25
+ });
26
+ get pid(): number;
27
+ get exitCode(): number;
28
+ get signalCode(): number;
29
+ get killed(): boolean;
30
+ init(): Promise<void>;
31
+ send(msg: any): Promise<void>;
32
+ private killProcess;
33
+ kill(signal?: 'SIGTERM' | 'SIGKILL', timeoutMs?: number): Promise<void>;
34
+ private initChild;
35
+ hasProcessExited(): boolean;
36
+ }
@@ -0,0 +1,212 @@
1
+ import { fork } from 'child_process';
2
+ import { Worker } from 'worker_threads';
3
+ import { createServer } from 'net';
4
+ import { ChildCommand, ParentCommand } from '../';
5
+ import * as EventEmitter from 'events';
6
+ /**
7
+ * @see https://nodejs.org/api/process.html#process_exit_codes
8
+ */
9
+ const exitCodesErrors = {
10
+ 1: 'Uncaught Fatal Exception',
11
+ 2: 'Unused',
12
+ 3: 'Internal JavaScript Parse Error',
13
+ 4: 'Internal JavaScript Evaluation Failure',
14
+ 5: 'Fatal Error',
15
+ 6: 'Non-function Internal Exception Handler',
16
+ 7: 'Internal Exception Handler Run-Time Failure',
17
+ 8: 'Unused',
18
+ 9: 'Invalid Argument',
19
+ 10: 'Internal JavaScript Run-Time Failure',
20
+ 12: 'Invalid Debug Argument',
21
+ 13: 'Unfinished Top-Level Await',
22
+ };
23
+ /**
24
+ * Child class
25
+ *
26
+ * This class is used to create a child process or worker thread, and allows using
27
+ * isolated processes or threads for processing jobs.
28
+ *
29
+ */
30
+ export class Child extends EventEmitter {
31
+ constructor(mainFile, processFile, opts = {
32
+ useWorkerThreads: false,
33
+ }) {
34
+ super();
35
+ this.mainFile = mainFile;
36
+ this.processFile = processFile;
37
+ this.opts = opts;
38
+ this._exitCode = null;
39
+ this._signalCode = null;
40
+ this._killed = false;
41
+ }
42
+ get pid() {
43
+ if (this.childProcess) {
44
+ return this.childProcess.pid;
45
+ }
46
+ else if (this.worker) {
47
+ return this.worker.threadId;
48
+ }
49
+ else {
50
+ throw new Error('No child process or worker thread');
51
+ }
52
+ }
53
+ get exitCode() {
54
+ return this._exitCode;
55
+ }
56
+ get signalCode() {
57
+ return this._signalCode;
58
+ }
59
+ get killed() {
60
+ if (this.childProcess) {
61
+ return this.childProcess.killed;
62
+ }
63
+ return this._killed;
64
+ }
65
+ async init() {
66
+ const execArgv = await convertExecArgv(process.execArgv);
67
+ let parent;
68
+ if (this.opts.useWorkerThreads) {
69
+ this.worker = parent = new Worker(this.mainFile, {
70
+ execArgv,
71
+ stdin: true,
72
+ stdout: true,
73
+ stderr: true,
74
+ });
75
+ }
76
+ else {
77
+ this.childProcess = parent = fork(this.mainFile, [], {
78
+ execArgv,
79
+ stdio: 'pipe',
80
+ });
81
+ }
82
+ parent.on('exit', (exitCode, signalCode) => {
83
+ this._exitCode = exitCode;
84
+ // Coerce to null if undefined for backwards compatibility
85
+ signalCode = typeof signalCode === 'undefined' ? null : signalCode;
86
+ this._signalCode = signalCode;
87
+ this._killed = true;
88
+ this.emit('exit', exitCode, signalCode);
89
+ // Clean all listeners, we do not expect any more events after "exit"
90
+ parent.removeAllListeners();
91
+ this.removeAllListeners();
92
+ });
93
+ parent.on('error', (...args) => this.emit('error', ...args));
94
+ parent.on('message', (...args) => this.emit('message', ...args));
95
+ parent.on('close', (...args) => this.emit('close', ...args));
96
+ parent.stdout.pipe(process.stdout);
97
+ parent.stderr.pipe(process.stderr);
98
+ await this.initChild();
99
+ }
100
+ async send(msg) {
101
+ return new Promise((resolve, reject) => {
102
+ if (this.childProcess) {
103
+ this.childProcess.send(msg, (err) => {
104
+ if (err) {
105
+ reject(err);
106
+ }
107
+ else {
108
+ resolve();
109
+ }
110
+ });
111
+ }
112
+ else if (this.worker) {
113
+ resolve(this.worker.postMessage(msg));
114
+ }
115
+ else {
116
+ resolve();
117
+ }
118
+ });
119
+ }
120
+ killProcess(signal = 'SIGKILL') {
121
+ if (this.childProcess) {
122
+ this.childProcess.kill(signal);
123
+ }
124
+ else if (this.worker) {
125
+ this.worker.terminate();
126
+ }
127
+ }
128
+ async kill(signal = 'SIGKILL', timeoutMs) {
129
+ if (this.hasProcessExited()) {
130
+ return;
131
+ }
132
+ const onExit = onExitOnce(this.childProcess || this.worker);
133
+ this.killProcess(signal);
134
+ if (timeoutMs !== undefined && (timeoutMs === 0 || isFinite(timeoutMs))) {
135
+ const timeoutHandle = setTimeout(() => {
136
+ if (!this.hasProcessExited()) {
137
+ this.killProcess('SIGKILL');
138
+ }
139
+ }, timeoutMs);
140
+ await onExit;
141
+ clearTimeout(timeoutHandle);
142
+ }
143
+ await onExit;
144
+ }
145
+ async initChild() {
146
+ const onComplete = new Promise((resolve, reject) => {
147
+ const onMessageHandler = (msg) => {
148
+ if (msg.cmd === ParentCommand.InitCompleted) {
149
+ resolve();
150
+ }
151
+ else if (msg.cmd === ParentCommand.InitFailed) {
152
+ const err = new Error();
153
+ err.stack = msg.err.stack;
154
+ err.message = msg.err.message;
155
+ reject(err);
156
+ }
157
+ this.off('message', onMessageHandler);
158
+ this.off('close', onCloseHandler);
159
+ };
160
+ const onCloseHandler = (code, signal) => {
161
+ if (code > 128) {
162
+ code -= 128;
163
+ }
164
+ const msg = exitCodesErrors[code] || `Unknown exit code ${code}`;
165
+ reject(new Error(`Error initializing child: ${msg} and signal ${signal}`));
166
+ this.off('message', onMessageHandler);
167
+ this.off('close', onCloseHandler);
168
+ };
169
+ this.on('message', onMessageHandler);
170
+ this.on('close', onCloseHandler);
171
+ });
172
+ await this.send({
173
+ cmd: ChildCommand.Init,
174
+ value: this.processFile,
175
+ });
176
+ await onComplete;
177
+ }
178
+ hasProcessExited() {
179
+ return !!(this.exitCode !== null || this.signalCode);
180
+ }
181
+ }
182
+ function onExitOnce(child) {
183
+ return new Promise(resolve => {
184
+ child.once('exit', () => resolve());
185
+ });
186
+ }
187
+ const getFreePort = async () => {
188
+ return new Promise(resolve => {
189
+ const server = createServer();
190
+ server.listen(0, () => {
191
+ const { port } = server.address();
192
+ server.close(() => resolve(port));
193
+ });
194
+ });
195
+ };
196
+ const convertExecArgv = async (execArgv) => {
197
+ const standard = [];
198
+ const convertedArgs = [];
199
+ for (let i = 0; i < execArgv.length; i++) {
200
+ const arg = execArgv[i];
201
+ if (arg.indexOf('--inspect') === -1) {
202
+ standard.push(arg);
203
+ }
204
+ else {
205
+ const argName = arg.split('=')[0];
206
+ const port = await getFreePort();
207
+ convertedArgs.push(`${argName}=${port}`);
208
+ }
209
+ }
210
+ return standard.concat(convertedArgs);
211
+ };
212
+ //# sourceMappingURL=child.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child.js","sourceRoot":"","sources":["../../../src/classes/child.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,6 @@ export * from './child-processor';
5
5
  export * from './delayed-error';
6
6
  export * from './flow-producer';
7
7
  export * from './job';
8
- export * from './process-utils';
9
8
  export * from './queue-base';
10
9
  export * from './queue-events';
11
10
  export * from './queue-getters';
@@ -5,8 +5,8 @@ export * from './child-processor';
5
5
  export * from './delayed-error';
6
6
  export * from './flow-producer';
7
7
  export * from './job';
8
- // export * from './master'; this file must not be exported
9
- export * from './process-utils';
8
+ // export * from './main'; this file must not be exported
9
+ // export * from './main-worker'; this file must not be exported
10
10
  export * from './queue-base';
11
11
  export * from './queue-events';
12
12
  export * from './queue-getters';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,2DAA2D;AAC3D,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,yDAAyD;AACzD,gEAAgE;AAChE,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,UAAU,CAAC"}
@@ -340,7 +340,10 @@ export class Job {
340
340
  if (stringifiedReturnValue === errorObject) {
341
341
  throw errorObject.value;
342
342
  }
343
- return this.scripts.moveToCompleted(this, stringifiedReturnValue, this.opts.removeOnComplete, token, fetchNext);
343
+ const args = this.scripts.moveToCompletedArgs(this, stringifiedReturnValue, this.opts.removeOnComplete, token, fetchNext);
344
+ const result = await this.scripts.moveToFinished(this.id, args);
345
+ this.finishedOn = args[13];
346
+ return result;
344
347
  }
345
348
  /**
346
349
  * Moves a job to the failed queue.
@@ -380,7 +383,7 @@ export class Job {
380
383
  else {
381
384
  // Retry immediately
382
385
  multi.retryJob(this.scripts.retryJobArgs(this.id, this.opts.lifo, token));
383
- command = 'retry';
386
+ command = 'retryJob';
384
387
  }
385
388
  }
386
389
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/classes/job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/classes/job.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ declare const _default: (send: (msg: any) => Promise<void>, receiver: {
2
+ on: (evt: 'message', cb: (msg: any) => void) => void;
3
+ }) => void;
4
+ export default _default;
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Wrapper for sandboxing.
3
+ *
4
+ */
5
+ import { toString } from 'lodash';
6
+ import { ChildProcessor } from './child-processor';
7
+ import { ParentCommand, ChildCommand } from '../interfaces';
8
+ import { errorToJSON } from '../utils';
9
+ export default (send, receiver) => {
10
+ const childProcessor = new ChildProcessor(send);
11
+ receiver === null || receiver === void 0 ? void 0 : receiver.on('message', async (msg) => {
12
+ try {
13
+ switch (msg.cmd) {
14
+ case ChildCommand.Init:
15
+ await childProcessor.init(msg.value);
16
+ break;
17
+ case ChildCommand.Start:
18
+ await childProcessor.start(msg.job);
19
+ break;
20
+ case ChildCommand.Stop:
21
+ break;
22
+ }
23
+ }
24
+ catch (err) {
25
+ console.error('Error handling child message');
26
+ }
27
+ });
28
+ process.on('SIGTERM', () => childProcessor.waitForCurrentJobAndExit());
29
+ process.on('SIGINT', () => childProcessor.waitForCurrentJobAndExit());
30
+ process.on('uncaughtException', async (err) => {
31
+ if (!err.message) {
32
+ err = new Error(toString(err));
33
+ }
34
+ await send({
35
+ cmd: ParentCommand.Failed,
36
+ value: errorToJSON(err),
37
+ });
38
+ // An uncaughException leaves this process in a potentially undetermined state so
39
+ // we must exit
40
+ process.exit(-1);
41
+ });
42
+ };
43
+ //# sourceMappingURL=main-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-base.js","sourceRoot":"","sources":["../../../src/classes/main-base.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAe,CACb,IAAiC,EACjC,QAAkE,EAClE,EAAE;IACF,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;IAEhD,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,EAAE,CAAC,SAAS,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE;QAClC,IAAI;YACF,QAAQ,GAAG,CAAC,GAAmB,EAAE;gBAC/B,KAAK,YAAY,CAAC,IAAI;oBACpB,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACrC,MAAM;gBACR,KAAK,YAAY,CAAC,KAAK;oBACrB,MAAM,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACpC,MAAM;gBACR,KAAK,YAAY,CAAC,IAAI;oBACpB,MAAM;aACT;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;SAC/C;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAEtE,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAU,EAAE,EAAE;QACnD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,GAAG,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;SAChC;QACD,MAAM,IAAI,CAAC;YACT,GAAG,EAAE,aAAa,CAAC,MAAM;YACzB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;SACxB,CAAC,CAAC;QAEH,iFAAiF;QACjF,eAAe;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Worker Thread wrapper for sandboxing
3
+ *
4
+ */
5
+ import { parentPort } from 'worker_threads';
6
+ import mainBase from './main-base';
7
+ mainBase(async (msg) => parentPort.postMessage(msg), parentPort);
8
+ //# sourceMappingURL=main-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-worker.js","sourceRoot":"","sources":["../../../src/classes/main-worker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,QAAQ,CAAC,KAAK,EAAE,GAAQ,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Child process wrapper for sandboxing.
3
+ *
4
+ */
5
+ import { childSend } from '../utils';
6
+ import mainBase from './main-base';
7
+ mainBase((msg) => childSend(process, msg), process);
8
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/classes/main.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,QAAQ,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC"}
@@ -1,11 +1,10 @@
1
1
  import { ChildCommand, ParentCommand } from '../interfaces';
2
- import { parentSend } from '../utils';
3
2
  const sandbox = (processFile, childPool) => {
4
3
  return async function process(job) {
5
4
  const child = await childPool.retain(processFile);
6
5
  let msgHandler;
7
6
  let exitHandler;
8
- await parentSend(child, {
7
+ await child.send({
9
8
  cmd: ChildCommand.Start,
10
9
  job: job.asJSONSandbox(),
11
10
  });
@@ -44,8 +43,8 @@ const sandbox = (processFile, childPool) => {
44
43
  return done;
45
44
  }
46
45
  finally {
47
- child.removeListener('message', msgHandler);
48
- child.removeListener('exit', exitHandler);
46
+ child.off('message', msgHandler);
47
+ child.off('exit', exitHandler);
49
48
  if (child.exitCode !== null || /SIG.*/.test(`${child.signalCode}`)) {
50
49
  childPool.remove(child);
51
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../../src/classes/sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAItC,MAAM,OAAO,GAAG,CACd,WAAgB,EAChB,SAAoB,EACpB,EAAE;IACF,OAAO,KAAK,UAAU,OAAO,CAAC,GAAiB;QAC7C,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,UAAe,CAAC;QACpB,IAAI,WAAgB,CAAC;QAErB,MAAM,UAAU,CAAC,KAAK,EAAE;YACtB,GAAG,EAAE,YAAY,CAAC,KAAK;YACvB,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAe,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACvD,UAAU,GAAG,KAAK,EAAE,GAAiB,EAAE,EAAE;gBACvC,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACf,KAAK,aAAa,CAAC,SAAS;wBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACnB,MAAM;oBACR,KAAK,aAAa,CAAC,MAAM,CAAC;oBAC1B,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC;wBACxB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;wBACxB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;wBACZ,MAAM;qBACP;oBACD,KAAK,aAAa,CAAC,QAAQ;wBACzB,MAAM,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACpC,MAAM;oBACR,KAAK,aAAa,CAAC,GAAG;wBACpB,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACzB,MAAM;oBACR,KAAK,aAAa,CAAC,MAAM;wBACvB,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC5B,MAAM;iBACT;YACH,CAAC,CAAC;YAEF,WAAW,GAAG,CAAC,QAAa,EAAE,MAAW,EAAE,EAAE;gBAC3C,MAAM,CACJ,IAAI,KAAK,CAAC,wBAAwB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC,CACtE,CAAC;YACJ,CAAC,CAAC;YAEF,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAChC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,IAAI;YACF,MAAM,IAAI,CAAC;YACX,OAAO,IAAI,CAAC;SACb;gBAAS;YACR,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAC5C,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAE1C,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE;gBAClE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACzB;iBAAM;gBACL,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aAC1B;SACF;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../../src/classes/sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,aAAa,EAAE,MAAM,eAAe,CAAC;AAI1E,MAAM,OAAO,GAAG,CACd,WAAgB,EAChB,SAAoB,EACpB,EAAE;IACF,OAAO,KAAK,UAAU,OAAO,CAAC,GAAiB;QAC7C,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,UAAe,CAAC;QACpB,IAAI,WAAgB,CAAC;QAErB,MAAM,KAAK,CAAC,IAAI,CAAC;YACf,GAAG,EAAE,YAAY,CAAC,KAAK;YACvB,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAe,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACvD,UAAU,GAAG,KAAK,EAAE,GAAiB,EAAE,EAAE;gBACvC,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACf,KAAK,aAAa,CAAC,SAAS;wBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACnB,MAAM;oBACR,KAAK,aAAa,CAAC,MAAM,CAAC;oBAC1B,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC;wBACxB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;wBACxB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;wBACZ,MAAM;qBACP;oBACD,KAAK,aAAa,CAAC,QAAQ;wBACzB,MAAM,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACpC,MAAM;oBACR,KAAK,aAAa,CAAC,GAAG;wBACpB,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACzB,MAAM;oBACR,KAAK,aAAa,CAAC,MAAM;wBACvB,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC5B,MAAM;iBACT;YACH,CAAC,CAAC;YAEF,WAAW,GAAG,CAAC,QAAa,EAAE,MAAW,EAAE,EAAE;gBAC3C,MAAM,CACJ,IAAI,KAAK,CAAC,wBAAwB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC,CACtE,CAAC;YACJ,CAAC,CAAC;YAEF,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAChC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,IAAI;YACF,MAAM,IAAI,CAAC;YACX,OAAO,IAAI,CAAC;SACb;gBAAS;YACR,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACjC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAE/B,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE;gBAClE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACzB;iBAAM;gBACL,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aAC1B;SACF;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -21,7 +21,7 @@ export declare class Scripts {
21
21
  updateProgress<T = any, R = any, N extends string = string>(job: MinimalJob<T, R, N>, progress: number | object): Promise<void>;
22
22
  protected moveToFinishedArgs<T = any, R = any, N extends string = string>(job: MinimalJob<T, R, N>, val: any, propVal: FinishedPropValAttribute, shouldRemove: undefined | boolean | number | KeepJobs, target: FinishedStatus, token: string, timestamp: number, fetchNext?: boolean): (string | number | boolean | Buffer)[];
23
23
  protected getKeepJobs(shouldRemove: undefined | boolean | number | KeepJobs, workerKeepJobs: undefined | KeepJobs): KeepJobs;
24
- protected moveToFinished<DataType = any, ReturnType = any, NameType extends string = string>(job: MinimalJob<DataType, ReturnType, NameType>, val: any, propVal: FinishedPropValAttribute, shouldRemove: boolean | number | KeepJobs, target: FinishedStatus, token: string, fetchNext: boolean): Promise<any[]>;
24
+ moveToFinished<DataType = any, ReturnType = any, NameType extends string = string>(jobId: string, args: (string | number | boolean | Buffer)[]): Promise<any[]>;
25
25
  finishedErrors(code: number, jobId: string, command: string, state?: string): Error;
26
26
  private drainArgs;
27
27
  drain(delayed: boolean): Promise<void>;
@@ -29,7 +29,7 @@ export declare class Scripts {
29
29
  getRanges(types: JobType[], start?: number, end?: number, asc?: boolean): Promise<[string][]>;
30
30
  private getCountsArgs;
31
31
  getCounts(types: JobType[]): Promise<number[]>;
32
- moveToCompleted<T = any, R = any, N extends string = string>(job: MinimalJob<T, R, N>, returnvalue: R, removeOnComplete: boolean | number | KeepJobs, token: string, fetchNext: boolean): Promise<any[]>;
32
+ moveToCompletedArgs<T = any, R = any, N extends string = string>(job: MinimalJob<T, R, N>, returnvalue: R, removeOnComplete: boolean | number | KeepJobs, token: string, fetchNext?: boolean): (string | number | boolean | Buffer)[];
33
33
  moveToFailedArgs<T = any, R = any, N extends string = string>(job: MinimalJob<T, R, N>, failedReason: string, removeOnFailed: boolean | number | KeepJobs, token: string, fetchNext?: boolean): (string | number | boolean | Buffer)[];
34
34
  isFinished(jobId: string, returnValue?: boolean): Promise<number | [number, string]>;
35
35
  getState(jobId: string): Promise<JobState | 'unknown'>;
@@ -189,16 +189,13 @@ export class Scripts {
189
189
  ? { count: shouldRemove }
190
190
  : { count: shouldRemove ? 0 : -1 };
191
191
  }
192
- async moveToFinished(job, val, propVal, shouldRemove, target, token, fetchNext) {
192
+ async moveToFinished(jobId, args) {
193
193
  const client = await this.queue.client;
194
- const timestamp = Date.now();
195
- const args = this.moveToFinishedArgs(job, val, propVal, shouldRemove, target, token, timestamp, fetchNext);
196
194
  const result = await client.moveToFinished(args);
197
195
  if (result < 0) {
198
- throw this.finishedErrors(result, job.id, 'finished', 'active');
196
+ throw this.finishedErrors(result, jobId, 'moveToFinished', 'active');
199
197
  }
200
198
  else {
201
- job.finishedOn = timestamp;
202
199
  if (typeof result !== 'undefined') {
203
200
  return raw2NextJobData(result);
204
201
  }
@@ -266,8 +263,9 @@ export class Scripts {
266
263
  const args = this.getCountsArgs(types);
267
264
  return client.getCounts(args);
268
265
  }
269
- moveToCompleted(job, returnvalue, removeOnComplete, token, fetchNext) {
270
- return this.moveToFinished(job, returnvalue, 'returnvalue', removeOnComplete, 'completed', token, fetchNext);
266
+ moveToCompletedArgs(job, returnvalue, removeOnComplete, token, fetchNext = false) {
267
+ const timestamp = Date.now();
268
+ return this.moveToFinishedArgs(job, returnvalue, 'returnvalue', removeOnComplete, 'completed', token, timestamp, fetchNext);
271
269
  }
272
270
  moveToFailedArgs(job, failedReason, removeOnFailed, token, fetchNext = false) {
273
271
  const timestamp = Date.now();