X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fpools%2Fabstract-pool.ts;h=85a47e38f7c248f7a92ff9e53166e2121048015c;hb=d715b7bc2973eed82edebb1f7d233d451ad3c97b;hp=b93915c48e31111b93eb2199ce50fd26dae222b6;hpb=744946cb7baf699b204014e3af4d371c59227fbe;p=poolifier.git diff --git a/src/pools/abstract-pool.ts b/src/pools/abstract-pool.ts index b93915c4..85a47e38 100644 --- a/src/pools/abstract-pool.ts +++ b/src/pools/abstract-pool.ts @@ -485,7 +485,7 @@ export abstract class AbstractPool< message: MessageValue ): void { if (this.workerChoiceStrategyContext.getTaskStatistics().runTime) { - workerTasksUsage.runTime += message.runTime ?? 0 + workerTasksUsage.runTime += message.taskPerformance?.runTime ?? 0 if ( this.workerChoiceStrategyContext.getTaskStatistics().avgRunTime && workerTasksUsage.ran !== 0 @@ -495,9 +495,9 @@ export abstract class AbstractPool< } if ( this.workerChoiceStrategyContext.getTaskStatistics().medRunTime && - message.runTime != null + message.taskPerformance?.runTime != null ) { - workerTasksUsage.runTimeHistory.push(message.runTime) + workerTasksUsage.runTimeHistory.push(message.taskPerformance.runTime) workerTasksUsage.medRunTime = median(workerTasksUsage.runTimeHistory) } } @@ -508,7 +508,7 @@ export abstract class AbstractPool< message: MessageValue ): void { if (this.workerChoiceStrategyContext.getTaskStatistics().waitTime) { - workerTasksUsage.waitTime += message.waitTime ?? 0 + workerTasksUsage.waitTime += message.taskPerformance?.waitTime ?? 0 if ( this.workerChoiceStrategyContext.getTaskStatistics().avgWaitTime && workerTasksUsage.ran !== 0 @@ -518,9 +518,9 @@ export abstract class AbstractPool< } if ( this.workerChoiceStrategyContext.getTaskStatistics().medWaitTime && - message.waitTime != null + message.taskPerformance?.waitTime != null ) { - workerTasksUsage.waitTimeHistory.push(message.waitTime) + workerTasksUsage.waitTimeHistory.push(message.taskPerformance.waitTime) workerTasksUsage.medWaitTime = median(workerTasksUsage.waitTimeHistory) } } @@ -531,15 +531,21 @@ export abstract class AbstractPool< message: MessageValue ): void { if (this.workerChoiceStrategyContext.getTaskStatistics().elu) { - if (workerTasksUsage.elu != null && message.elu != null) { + if ( + workerTasksUsage.elu != null && + message.taskPerformance?.elu != null + ) { workerTasksUsage.elu = { - idle: workerTasksUsage.elu.idle + message.elu.idle, - active: workerTasksUsage.elu.active + message.elu.active, + idle: workerTasksUsage.elu.idle + message.taskPerformance.elu.idle, + active: + workerTasksUsage.elu.active + message.taskPerformance.elu.active, utilization: - (workerTasksUsage.elu.utilization + message.elu.utilization) / 2 + (workerTasksUsage.elu.utilization + + message.taskPerformance.elu.utilization) / + 2 } - } else if (message.elu != null) { - workerTasksUsage.elu = message.elu + } else if (message.taskPerformance?.elu != null) { + workerTasksUsage.elu = message.taskPerformance.elu } } }