fix: ensure the number of worker choice retries is enough for WRR
[poolifier.git] / src / worker / cluster-worker.ts
index 1f9895d6e37b25a73911cd84f1c1f6f7404a98b8..d972692ec6eb4f182479cac008c47a1f20b75d8d 100644 (file)
@@ -32,13 +32,7 @@ export class ClusterWorker<
     taskFunctions: TaskFunction<Data, Response> | TaskFunctions<Data, Response>,
     opts: WorkerOptions = {}
   ) {
-    super(
-      'worker-cluster-pool:poolifier',
-      cluster.isPrimary,
-      cluster.worker as Worker,
-      taskFunctions,
-      opts
-    )
+    super(cluster.isPrimary, cluster.worker as Worker, taskFunctions, opts)
   }
 
   /** @inheritDoc */
@@ -48,14 +42,12 @@ export class ClusterWorker<
         this.getMainWorker().on('message', this.messageListener.bind(this))
         this.sendToMainWorker({
           ready: true,
-          taskFunctionNames: this.listTaskFunctionNames(),
-          workerId: this.id
+          taskFunctionNames: this.listTaskFunctionNames()
         })
       } catch {
         this.sendToMainWorker({
           ready: false,
-          taskFunctionNames: this.listTaskFunctionNames(),
-          workerId: this.id
+          taskFunctionNames: this.listTaskFunctionNames()
         })
       }
     }
@@ -67,7 +59,9 @@ export class ClusterWorker<
   }
 
   /** @inheritDoc */
-  protected sendToMainWorker (message: MessageValue<Response>): void {
-    this.getMainWorker().send(message)
+  protected readonly sendToMainWorker = (
+    message: MessageValue<Response>
+  ): void => {
+    this.getMainWorker().send({ ...message, workerId: this.id })
   }
 }