tools: fix flakiness in test-tick-processor by matthewloring · Pull Request #2694 · nodejs/node

@mscdex added the tools

Issues and PRs related to the tools directory.

label

Sep 4, 2015

Matt Loring added 2 commits

September 14, 2015 14:56
Per the discussion on #2471, the JS symbols checked for by this test
were occasionally too deep in the stack and were being ignored by the
tick processor.

I have addressed this by increasing the stack depth inspected by the
tick processor and looking for the eval symbol which is more likely
to be present. Additional flakiness was caused by occasional misses
of the code creation event for the JS function being executed. I now
have separate code snippets to test for JS and C++ symbols and if
the code creation event is missed for the JS symbol test then I check
for a percentage of UNKNOWN symbols in processed output. This is
considered a success as the processing scripts in the node repository
are still correctly processing the ticks recieved from the v8
scripts. Further investigation is needed into the v8 profiling
scripts to determine why code creation events are being missed.
The polyfill is only needed if incorrect command line arguments
are passed to the script so it was missed in initial testing.

bnoordhuis pushed a commit that referenced this pull request

Sep 14, 2015
Per the discussion on #2471, the JS symbols checked for by this test
were occasionally too deep in the stack and were being ignored by the
tick processor.

I have addressed this by increasing the stack depth inspected by the
tick processor and looking for the eval symbol which is more likely
to be present. Additional flakiness was caused by occasional misses
of the code creation event for the JS function being executed. I now
have separate code snippets to test for JS and C++ symbols and if
the code creation event is missed for the JS symbol test then I check
for a percentage of UNKNOWN symbols in processed output. This is
considered a success as the processing scripts in the node repository
are still correctly processing the ticks recieved from the v8
scripts. Further investigation is needed into the v8 profiling
scripts to determine why code creation events are being missed.

PR-URL: #2694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

bnoordhuis pushed a commit that referenced this pull request

Sep 14, 2015
The polyfill is only needed if incorrect command line arguments
are passed to the script so it was missed in initial testing.

PR-URL: #2694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

Fishrock123 pushed a commit that referenced this pull request

Sep 15, 2015
Per the discussion on #2471, the JS symbols checked for by this test
were occasionally too deep in the stack and were being ignored by the
tick processor.

I have addressed this by increasing the stack depth inspected by the
tick processor and looking for the eval symbol which is more likely
to be present. Additional flakiness was caused by occasional misses
of the code creation event for the JS function being executed. I now
have separate code snippets to test for JS and C++ symbols and if
the code creation event is missed for the JS symbol test then I check
for a percentage of UNKNOWN symbols in processed output. This is
considered a success as the processing scripts in the node repository
are still correctly processing the ticks recieved from the v8
scripts. Further investigation is needed into the v8 profiling
scripts to determine why code creation events are being missed.

PR-URL: #2694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

Fishrock123 pushed a commit that referenced this pull request

Sep 15, 2015
The polyfill is only needed if incorrect command line arguments
are passed to the script so it was missed in initial testing.

PR-URL: #2694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

rvagg pushed a commit that referenced this pull request

Sep 15, 2015
Per the discussion on #2471, the JS symbols checked for by this test
were occasionally too deep in the stack and were being ignored by the
tick processor.

I have addressed this by increasing the stack depth inspected by the
tick processor and looking for the eval symbol which is more likely
to be present. Additional flakiness was caused by occasional misses
of the code creation event for the JS function being executed. I now
have separate code snippets to test for JS and C++ symbols and if
the code creation event is missed for the JS symbol test then I check
for a percentage of UNKNOWN symbols in processed output. This is
considered a success as the processing scripts in the node repository
are still correctly processing the ticks recieved from the v8
scripts. Further investigation is needed into the v8 profiling
scripts to determine why code creation events are being missed.

PR-URL: #2694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

rvagg pushed a commit that referenced this pull request

Sep 15, 2015
The polyfill is only needed if incorrect command line arguments
are passed to the script so it was missed in initial testing.

PR-URL: #2694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

@rvagg rvagg mentioned this pull request

Sep 15, 2015

@rvagg rvagg mentioned this pull request

Sep 22, 2015