File tree Expand file tree Collapse file tree
apps/api/v2/src/modules/slots/slots-2024-04-15/services Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -32,7 +32,7 @@ interface WorkerResult {
3232
3333@Injectable ( )
3434export class SlotsWorkerService_2024_04_15 implements OnModuleDestroy {
35- private readonly logger = new Logger ( SlotsWorkerService_2024_04_15 . name ) ;
35+ private readonly logger = new Logger ( " SlotsWorkerService_2024_04_15" ) ;
3636 private readonly workerPool : Worker [ ] = [ ] ;
3737 private readonly maxWorkers : number ;
3838 private readonly taskQueue : Array < {
@@ -94,9 +94,27 @@ export class SlotsWorkerService_2024_04_15 implements OnModuleDestroy {
9494 */
9595 private handleWorkerFailure ( failedWorker : Worker ) : void {
9696 // Remove the failed worker from both pools
97+ this . logger . error ( `Handling Worker ${ failedWorker . threadId } failure` ) ;
9798 this . workerPool . splice ( this . workerPool . indexOf ( failedWorker ) , 1 ) ;
9899 this . availableWorkers = this . availableWorkers . filter ( ( w ) => w !== failedWorker ) ;
99100
101+ try {
102+ failedWorker
103+ . terminate ( )
104+ . then ( ( ) => {
105+ this . logger . log ( `Terminated failed worker ${ failedWorker . threadId } ` ) ;
106+ } )
107+ . catch ( ( err ) => {
108+ this . logger . error ( `Error terminating failed worker ${ failedWorker . threadId } : ${ err ?. message } ` ) ;
109+ } ) ;
110+ } catch ( error ) {
111+ this . logger . error (
112+ `Failed to invoke terminate method on failed worker ${ failedWorker . threadId } : ${
113+ error instanceof Error ? error . message : String ( error )
114+ } `
115+ ) ;
116+ }
117+
100118 // Attempt to create a new worker to replace the failed one
101119 try {
102120 this . createNewWorker ( ) ;
You can’t perform that action at this time.
0 commit comments