diff options
author | Gireesh Punathil <gpunathi@in.ibm.com> | 2019-02-25 09:35:09 -0500 |
---|---|---|
committer | Gireesh Punathil <gpunathi@in.ibm.com> | 2019-02-28 10:06:42 +0530 |
commit | 4a3928e125bb1ab7242e8134f911b6c71551bd75 (patch) | |
tree | d3fcd70db0d4ebb069a61ea1c557079d0a1d0c8a /test | |
parent | 17b4949a84106d70749106985f6d606004acf25a (diff) | |
download | android-node-v8-4a3928e125bb1ab7242e8134f911b6c71551bd75.tar.gz android-node-v8-4a3928e125bb1ab7242e8134f911b6c71551bd75.tar.bz2 android-node-v8-4a3928e125bb1ab7242e8134f911b6c71551bd75.zip |
test: eliminate port collision
In test test-cluster-net-listen-ipv6only-rr, the cluster member that
listens to `any` port actually has the potential to `grab` any port
from the environment which when passed onto the master causes
collision when it tries to listen on.
Moving the test to sequential alone is not sufficient as the cluster
member can in theory catch on to the admin ports on the host.
Assigning static port alone is also not sufficient, as it can interfere
with other running tests in the parallel category which would be mostly
running with `port: any` fashion.
So move to sequential, and use a static port.
Fixes: https://github.com/nodejs/node/issues/25813
PR-URL: https://github.com/nodejs/node/pull/26298
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com>
Diffstat (limited to 'test')
-rw-r--r-- | test/sequential/test-cluster-net-listen-ipv6only-rr.js (renamed from test/parallel/test-cluster-net-listen-ipv6only-rr.js) | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/test/parallel/test-cluster-net-listen-ipv6only-rr.js b/test/sequential/test-cluster-net-listen-ipv6only-rr.js index e5944ccf60..a42be88ddf 100644 --- a/test/parallel/test-cluster-net-listen-ipv6only-rr.js +++ b/test/sequential/test-cluster-net-listen-ipv6only-rr.js @@ -48,9 +48,14 @@ if (cluster.isMaster) { workers.set(i, worker); } } else { + // As the cluster member has the potential to grab any port + // from the environment, this can cause collision when master + // obtains the port from cluster member and tries to listen on. + // So move this to sequential, and provide a static port. + // Refs: https://github.com/nodejs/node/issues/25813 net.createServer().listen({ - host, - port: 0, + host: host, + port: common.PORT, ipv6Only: true, }, common.mustCall()); } |