Permalink
Browse files

benchmark: fix issues in dns benchmark

The benchmark script for dns contained functions with args declared
but never used. This fix removes those arguments from the function
signatures.

No test existed for the dns benchmark so one was added to the
parallel suite.
To improve performance the tests are limited to 1 invocation to a
single endpoint.

PR-URL: #14936
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Refael Ackermann <refack@gmail.com>
  • Loading branch information...
ian-perkins authored and BridgeAR committed Aug 18, 2017
1 parent 9aa7093 commit 15ac1eac3b8d9ff3d42c303d52126e51314b161f
Showing with 31 additions and 4 deletions.
  1. +4 −4 benchmark/dns/lookup.js
  2. +27 −0 test/parallel/test-benchmark-dns.js
View
@@ -5,20 +5,20 @@ const lookup = require('dns').lookup;
const bench = common.createBenchmark(main, {
name: ['', '127.0.0.1', '::1'],
all: [true, false],
all: ['true', 'false'],
n: [5e6]
});
function main(conf) {
const name = conf.name;
const n = +conf.n;
const all = !!conf.all;
const all = conf.all === 'true' ? true : false;
var i = 0;
if (all) {
const opts = { all: true };
bench.start();
(function cb(err, results) {
(function cb() {
if (i++ === n) {
bench.end(n);
return;
@@ -27,7 +27,7 @@ function main(conf) {
})();
} else {
bench.start();
(function cb(err, result) {
(function cb() {
if (i++ === n) {
bench.end(n);
return;
@@ -0,0 +1,27 @@
'use strict';
require('../common');
// Minimal test for dns benchmarks. This makes sure the benchmarks aren't
// horribly broken but nothing more than that.
const assert = require('assert');
const fork = require('child_process').fork;
const path = require('path');
const runjs = path.join(__dirname, '..', '..', 'benchmark', 'run.js');
const env = Object.assign({}, process.env,
{ NODEJS_BENCHMARK_ZERO_ALLOWED: 1 });
const child = fork(runjs,
['--set', 'n=1',
'--set', 'all=false',
'--set', 'name=127.0.0.1',
'dns'],
{ env });
child.on('exit', (code, signal) => {
assert.strictEqual(code, 0);
assert.strictEqual(signal, null);
});

0 comments on commit 15ac1ea

Please sign in to comment.