nodejs / nodejs/node

benchmark: http simple connect timeout on macOS

Open
#32,337 6 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

benchmark
Dominant language
JavaScript
Stars
122k
Forks
37.3k
Avg merge
4d 2h
Merged PRs (30d)
283

Description

  • Version: v13.11.0
  • Platform: macOS Catalina
  • Subsystem: benchmark
What steps will reproduce the bug?
node benchmark/http/simple.js
How often does it reproduce? Is there a required condition?

Always reproduces.

What is the expected behavior?

It should run without timeout error on macOS.

What do you see instead?
Screen Shot 2020-03-18 at 11 58 44 AM
Additional information

I found that it works when I change duration from 5 to 10. It could be some problem with frequently port binding.

const bench = common.createBenchmark(main, {
  // Unicode confuses ab on os x.
  type: ['bytes', 'buffer'],
  len: [4, 1024, 102400],
  chunks: [1, 4],
  c: [50, 500],
  chunkedEnc: [1, 0],
  duration: 5 // replace with 10, it works
});

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by running node benchmark/http/simple.js on macOS and inspect benchmark/http/simple.js, especially the benchmark configuration with duration: 5. Investigate the reported timeout and possible frequent port binding behavior; the work is done when the benchmark runs without a timeout at the original duration on macOS.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
performance
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
57/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.