From a1a54ca3f1c55d3e7fb56fa566c98bc6c0a2dd9a Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Tue, 25 Apr 2017 13:48:50 -0700 Subject: [PATCH] benchmark: terminate child process on Windows test-benchmark-child-process failures reveal that child-process-exec-stdout benchmark sometimes leaves around a stray yes.exe process. Add code to terminate the process. PR-URL: https://github.com/nodejs/node/pull/12658 Ref: https://github.com/nodejs/node/issues/12560 Reviewed-By: Refael Ackermann Reviewed-By: Bartosz Sosnowski Reviewed-By: James M Snell --- benchmark/child_process/child-process-exec-stdout.js | 10 ++++++++-- test/sequential/sequential.status | 1 - 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/benchmark/child_process/child-process-exec-stdout.js b/benchmark/child_process/child-process-exec-stdout.js index 6b9bebf347c756..a30eb92f6ad39a 100644 --- a/benchmark/child_process/child-process-exec-stdout.js +++ b/benchmark/child_process/child-process-exec-stdout.js @@ -10,7 +10,8 @@ const bench = common.createBenchmark(main, { dur: [5] }); -const exec = require('child_process').exec; +const child_process = require('child_process'); +const exec = child_process.exec; function main(conf) { bench.start(); @@ -29,7 +30,12 @@ function main(conf) { }); setTimeout(function() { - child.kill(); bench.end(bytes); + if (process.platform === 'win32') { + // Sometimes there's a yes.exe process left hanging around on Windows... + child_process.execSync(`taskkill /f /t /pid ${child.pid}`); + } else { + child.kill(); + } }, dur * 1000); } diff --git a/test/sequential/sequential.status b/test/sequential/sequential.status index 9e6dfc9975bf56..8467864395ff66 100644 --- a/test/sequential/sequential.status +++ b/test/sequential/sequential.status @@ -7,7 +7,6 @@ prefix sequential [true] # This section applies to all platforms [$system==win32] -test-benchmark-child-process : PASS,FLAKY [$system==linux]