-
Notifications
You must be signed in to change notification settings - Fork 30.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
benchmark: fix dgram/bind-params.js benchmark #14948
Conversation
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ```
benchmark/dgram/bind-params.js
Outdated
@@ -19,19 +19,27 @@ function main(conf) { | |||
if (port !== undefined && address !== undefined) { | |||
bench.start(); | |||
for (let i = 0; i < n; i++) { | |||
dgram.createSocket('udp4').bind(port, address).unref(); | |||
dgram.createSocket('udp4').bind(port, address) | |||
.on('error', () => {}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps pull this out to avoid creating n
functions? I'm not sure what V8 optimizes away these days.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with @mscdex's suggestion.
@Trott, feel free to drop this out if you disagree.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ``` PR-URL: nodejs#14948 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Landed in fffc84a |
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ``` PR-URL: nodejs/node#14948 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ``` PR-URL: nodejs/node#14948 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ``` PR-URL: #14948 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ``` PR-URL: #14948 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
`benchmark/dgram/bind-params` exits with an error frequently in its current form because no error handler is applied. Add no-op error handlers to avoid the problem. ```console $ node benchmark/run.js --filter bind-params dgram dgram/bind-params.js dgram/bind-params.js address="true" port="true" n=10000: 193,347.42178656923 events.js:182 throw er; // Unhandled 'error' event ^ Error: bind ENFILE 0.0.0.0 at Object._errnoException (util.js:1041:11) at _exceptionWithHostPort (util.js:1064:20) at _handle.lookup (dgram.js:242:18) at _combinedTickCallback (internal/process/next_tick.js:141:11) at process._tickCallback (internal/process/next_tick.js:180:9) at Function.Module.runMain (module.js:611:11) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:598:3 $ ``` PR-URL: #14948 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
benchmark/dgram/bind-params
exits with an error frequently in itscurrent form because no error handler is applied. Add no-op error
handlers to avoid the problem.
Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passesAffected core subsystem(s)
benchmark dgram