Skip to content
Permalink
Branch: master
Commits on May 12, 2019
  1. test: better assertion for async hook tests

    ofrobots authored and antsmartian committed May 7, 2019
    The existing assertion was misleading to whether there were too few or
    too many events of a particular type. Improve the assertion message.
    
    PR-URL: #27601
    Reviewed-By: Rich Trott <rtrott@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
Commits on May 9, 2019
  1. http, http2: remove default server timeout

    ofrobots committed May 3, 2019
    Timing out and closing the socket after two minutes have elapsed is
    surprising and problematic for users. This behavior was specific to
    Node.js, and doesn't seem to be common in other language runtimes.
    
    Fixes: #27556
    
    PR-URL: #27558
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Rich Trott <rtrott@gmail.com>
Commits on Apr 4, 2019
  1. meta: move ofrobots to TSC emeritus

    ofrobots authored and danbev committed Apr 3, 2019
    PR-URL: #27076
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Richard Lau <riclau@uk.ibm.com>
    Reviewed-By: Yuta Hiroto <hello@hiroppy.me>
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
    Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
    Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Commits on Feb 15, 2019
  1. lib: improve error message for MODULE_NOT_FOUND

    ofrobots committed Feb 13, 2019
    Include the require stack in the reported error message.
    
    PR-URL: #25690
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
  2. lib: requireStack property for MODULE_NOT_FOUND

    ofrobots committed Jan 28, 2019
    Include the stack of requires that led to a MODULE_NOT_FOUND error.
    
    PR-URL: #25690
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
Commits on Feb 1, 2019
  1. src: properly configure default heap limits

    ofrobots committed Feb 1, 2019
    Unless configured, V8 defaults to limiting the max heaps size to 700 MB
    or 1400MB on 32 and 64-bit platforms respectively. This default is
    based on the browser use-cases and doesn't make a lot of sense
    generally. This change properly configures the heap size based on
    actual available memory.
    
    PR-URL: #25576
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Yang Guo <yangguo@chromium.org>
    Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Commits on Jan 7, 2019
  1. src: trace_events: fix race with metadata events

    ofrobots authored and addaleax committed Dec 27, 2018
    Multiple threads may be concurrently adding to the metadata_events list.
    Protect access with a mutex.
    
    Fixes: #24129
    
    PR-URL: #25235
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
Commits on Nov 2, 2018
  1. test: fix test-fs-watch-system-limit

    ofrobots authored and Trott committed Oct 30, 2018
    On some systems the default inotify limits might be too high for the
    test to actually fail. Detect and skip the test in such environments.
    
    PR-URL: #23986
    Reviewed-By: Richard Lau <riclau@uk.ibm.com>
    Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Commits on Oct 19, 2018
  1. benchmark: coerce PORT to number

    ofrobots committed Oct 17, 2018
    Without this fix net/tcp-raw-c2s.js aborts in environments where PORT
    is defined. TCPWrap::Connect expects the third arg to be a UInt32.
    
    PR-URL: #23721
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
    Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
  2. doc: add Backport-PR-URL info in backport guide

    ofrobots committed Oct 16, 2018
    PR-URL: #23701
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Matheus Marchini <mat@mmarchini.me>
    Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Refael Ackermann <refack@gmail.com>
    Reviewed-By: Shelley Vohr <codebytere@gmail.com>
    Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
    Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
    Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
    Reviewed-By: George Adams <george.adams@uk.ibm.com>
    Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Commits on Oct 13, 2018
  1. src: reduce platform worker barrier lifetime

    ofrobots committed Oct 11, 2018
    Minor cleanup in the lifetime for the platform worker initialization
    synchronization barrier.
    
    PR-URL: #23419
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Denys Otrishko <shishugi@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Commits on Oct 12, 2018
  1. src: trace_event: secondary storage for metadata

    ofrobots authored and addaleax committed Oct 11, 2018
    Metadata trace-events should be held in secondary storage so that they
    can be periodically reemitted. This change establishes the secondary
    storage and ensures that events are reemitted on each flush.
    
    PR-URL: #20900
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
Commits on Oct 6, 2018
  1. trace_events: destroy platform before tracing

    ofrobots authored and Trott committed Sep 18, 2018
    For safer shutdown, we should destroy the platform – and background
    threads - before the tracing infrastructure is destroyed. This change
    fixes the relative order of NodePlatform disposition and the tracing
    agent shutting down. This matches the nesting order for startup.
    
    Make the tracing agent own the tracing controller instead of platform
    to match the above.
    
    Fixes: #22865
    
    PR-URL: #22938
    Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
  2. src: ready background workers before bootstrap

    ofrobots authored and Trott committed Sep 26, 2018
    Make sure background workers are ready before proceeding with the
    bootstrap or post-bootstrap execution of any code that may trigger
    `process.exit()`.
    
    Fixes: #23065
    
    PR-URL: #23233
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
Commits on Sep 14, 2018
  1. trace_events: avoid flusing uninitialized traces

    ofrobots committed Sep 12, 2018
    PR-URL: #22812
    Reviewed-By: Refael Ackermann <refack@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
  2. deps: cherry-pick 2363cdf from upstream V8

    ofrobots committed Sep 11, 2018
    Original commit message:
    
        [tracing] do not add traces when disabled
    
        #21038
    
        Change-Id: Ic4c9f403b5e54a97d3170b2311dd5aab8c8357c8
        Reviewed-on: https://chromium-review.googlesource.com/1217726
        Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com>
        Reviewed-by: Yang Guo <yangguo@chromium.org>
        Cr-Commit-Position: refs/heads/master@{#55809}
    
    Refs: v8/v8@2363cdf
    PR-URL: #22812
    Reviewed-By: Refael Ackermann <refack@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
Commits on Sep 4, 2018
  1. test: add test to dynamic enablement of trace-events

    ofrobots authored and targos committed Aug 3, 2018
    PR-URL: #22114
    Reviewed-By: James M Snell <jasnell@gmail.com>
  2. deps: cherry-pick bf5ea81 from upstream V8

    ofrobots authored and targos committed Aug 3, 2018
    Original commit message:
    
        [tracing] allow dynamic control of tracing
    
        If the trace_buffer_ was null, we were returning a pointer to a static
        flag back that permanently disabled that particular trace point.
    
        This implied an assumption that tracing will be statically enabled at
        process startup, and once it is disabled, it will never be enabled
        again. On Node.js side we want to dynamically enable/disable tracing as per
        programmer intent.
    
        Change-Id: Ic7a7839b8450ab5c356d85e8e0826f42824907f4
        Reviewed-on: https://chromium-review.googlesource.com/1161518
        Reviewed-by: Yang Guo <yangguo@chromium.org>
        Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com>
        Cr-Commit-Position: refs/heads/master@{#54903}
    
    Refs: v8/v8@bf5ea81
    
    PR-URL: #22114
    Reviewed-By: James M Snell <jasnell@gmail.com>
Commits on May 21, 2018
  1. src: trace_events: background thread events

    ofrobots committed May 16, 2018
    V8 uses a thread pool provided by the host to schedule background tasks
    for concurrent GC and compiation. Emit trace events to identify the
    background threads. Ensure that the tracing infrastructure is started
    before the thread pool is initialized.
    
    PR-URL: #20823
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Commits on May 18, 2018
  1. src: trace_events: support for metadata events

    ofrobots committed May 15, 2018
    Add support for metadata events. At this point they are added to the
    main buffer. Emit a metadata event for the main thread.
    
    PR-URL: #20757
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Commits on May 17, 2018
  1. deps: V8: cherry-pick b49206d from upstream

    ofrobots committed May 14, 2018
    Original commit message:
      ThreadDataTable: Change global linked list to per-Isolate hash map.
    
      For use cases with a large number of threads or a large number of
      isolates (or both), ThreadDataTable can be a major performance
      bottleneck due to O(n) lookup time of the linked list. Switching to a
      hash map reduces this to O(1).
    
      Example 1: Sandstorm.io, a Node.js app that utilizes "fibers", was
      observed spending the majority of CPU time iterating over the
      ThreadDataTable.
      See: https://sandstorm.io/news/2016-09-30-fiber-bomb-debugging-story
    
      Example 2: Cloudflare's Workers engine, a high-multi-tenancy web
      server framework built on V8 (but not Node), creates large numbers of
      threads and isolates per-process. It saw a 34x improvement in
      throughput when we applied this patch.
    
      Cloudflare has been using a patch in production since the Worker
      launch which replaces the linked list with a hash map -- but still
      global.
    
      This commit builds on that but goes further and creates a separate
      hash map and mutex for each isolate, with the table being a member of
      the Isolate class. This avoids any globals and should reduce lock
      contention.
    
      Bug: v8:5338
      Change-Id: If0d11509afb2e043b888c376e36d3463db931b47
      Reviewed-on: https://chromium-review.googlesource.com/1014407
      Reviewed-by: Yang Guo <yangguo@chromium.org>
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52753}
    
    PR-URL: #20727
    Ref: #20083
    
    Refs: #20083
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: James M Snell <jasnell@gmail.com>
Commits on Apr 13, 2018
  1. doc: add pronouns for ofrobots

    ofrobots authored and MylesBorins committed Apr 12, 2018
    PR-URL: #19992
    Reviewed-By: Myles Borins <myles.borins@gmail.com>
    Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com>
    Reviewed-By: Yuta Hiroto <hello@hiroppy.me>
    Reviewed-By: Gus Caplan <me@gus.host>
    Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Commits on Mar 20, 2018
  1. doc: fix/improve inspector profiler example

    ofrobots committed Mar 15, 2018
    The first parameter to the callback is `err`. Fix that. Expand example
    to demonstrate an actual write to disk.
    
    PR-URL: #19379
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Richard Lau <riclau@uk.ibm.com>
    Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Commits on Mar 8, 2018
  1. doc: add inspector usage example

    ofrobots committed Mar 6, 2018
    Add a simple example showing how to use the inspector API to access
    the CPU profiler.
    
    PR-URL: #19172
    Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
    Reviewed-By: Khaidi Chu <i@2333.moe>
Commits on Feb 16, 2018
  1. test: fix warnings in addon tests

    ofrobots authored and jasnell committed Feb 16, 2018
    The legacy MakeCallback deprecation was resulting in compile time
    warnings in adddon tests. Fix them.
    
    Ref: #18632
    
    PR-URL: #18810
    Refs: #18632
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
  2. src: deprecate legacy node::MakeCallback

    ofrobots committed Jan 25, 2018
    The legacy MakeCallback functions do not provide a mechanism to
    propagate async context. This means that any native modules using these
    directly is likely breaking async debugging & tracing tools. For
    example it is possible that such a module will cause incorrect async
    stack traces to be reported (even when the module is not on the stack).
    
    The new MakeCallback allow the user to specify the async context in
    which the callback is to be executed.
    
    Ref: #13254
    PR-URL: #18632
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Evan Lucas <evanlucas@me.com>
    Reviewed-By: Jan Krems <jan.krems@gmail.com>
    Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Commits on Feb 12, 2018
  1. async_hooks: rename PromiseWrap.parentId

    ofrobots committed Feb 8, 2018
    Rename the `parentId` property on the PromiseWrap object to a
    `isChainedPromise` property. The former wasn't quite useful as it was
    always defined to be the same value as the trigger id available in the
    init hook. Instead rename the property to be closer to the information
    it communicates: whether the promise is a chained promise or not.
    
    PR-URL: #18633
    Fixes: #18470
    Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Commits on Feb 9, 2018
  1. async_hooks: deprecate unsafe emit{Before,After}

    ofrobots committed Feb 1, 2018
    The emit{Before,After} APIs in AsyncResource are problematic.
    
    * emit{Before,After} are named to suggest that the only thing they do
      is emit the before and after hooks. However, they in fact, mutate
      the current execution context.
    * They must be properly nested. Failure to do so by user code leads
      to catastrophic (unrecoverable) exceptions. It is very easy for the
      users to forget that they must be using a try/finally block around
      the code that must be surrounded by these operations. Even the
      example provided in the official docs makes this mistake. Failing
      to use a finally can lead to a catastrophic crash if the callback
      ends up throwing.
    
    This change provides a safer `runInAsyncScope` API as an alternative
    and deprecates emit{Before,After}.
    
    PR-URL: #18513
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
Commits on Feb 5, 2018
  1. doc: expand on promises and async_hooks

    ofrobots committed Feb 2, 2018
    AsyncHooks have a few subtleties with being able to track promises.
    This commit adds a section to the docs that explains things the issues.
    
    PR-URL: #18540
    Fixes: #18520
    Reviewed-By: James M Snell <jasnell@gmail.com>
Commits on Feb 1, 2018
  1. async_hooks: clean up comments

    ofrobots committed Jan 30, 2018
    With some of the recent work, some of the comments were no longer
    representative of the code, or were otherwise unclear. This commit
    fixes some obvious issues I found.
    
    Ref: 83e5215
    Ref: 0784b04
    PR-URL: #18467
    Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Commits on Jan 30, 2018
  1. doc: reorder section on updating PR branch

    ofrobots committed Jan 24, 2018
    It makes more sense to provide instructions on how to update the PR
    branch before instructions on pushing the commit.
    
    PR-URL: #18355
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Richard Lau <riclau@uk.ibm.com>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
    Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Jon Moss <me@jonathanmoss.me>
Commits on Jan 25, 2018
  1. deps: V8: reintroduce missing whitespace in test

    ofrobots committed Jan 25, 2018
    4c4af64 accidentally dropped the significant whitespace from this test
    when it was landed. Add the whitespace back.
    
    Refs: #17489
    PR-URL: #18360
    Reviewed-By: Kyle Farnung <kfarnung@microsoft.com>
  2. deps: cherry-pick c3bb73f from upstream V8

    ofrobots committed Jan 17, 2018
    Original commit message:
    
        [tracing] implement TRACE_EVENT_ADD_WITH_TIMESTAMP
    
        Bug:
        Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
        Change-Id: Icb3cf7b7f96704e1eaa4c5fbf773b94b70cddc85
        Reviewed-on: https://chromium-review.googlesource.com/861302
        Reviewed-by: Fadi Meawad <fmeawad@chromium.org>
        Reviewed-by: Yang Guo <yangguo@chromium.org>
        Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com>
        Cr-Commit-Position: refs/heads/master@{#50549}
    
    Refs: v8/v8@c3bb73f
    Refs: #17349
    PR-URL: #18196
    Refs: #18360
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
  3. deps: cherry-pick 814577e from upstream V8

    ofrobots committed Jan 17, 2018
    Original commit message:
    
        [tracing] allow embedders to provide own tracing timestamps
    
        Make it possible for embedders to provide their own tracing timetamps by
        providing an overridable virtual function on V8's tracing controller.
    
        Bug:
        Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
        Change-Id: I727e633cb7f63d4b41c2e427ecca3c9174c90bfe
        Reviewed-on: https://chromium-review.googlesource.com/847690
        Reviewed-by: Yang Guo <yangguo@chromium.org>
        Reviewed-by: Fadi Meawad <fmeawad@chromium.org>
        Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com>
        Cr-Commit-Position: refs/heads/master@{#50489}
    
    Refs: v8/v8@814577e
    Refs: #17349
    PR-URL: #18196
    Refs: #18360
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Anna Henningsen <anna@addaleax.net>
    Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
Commits on Jan 24, 2018
  1. deps: V8: backport 76c3ac5 from upstream

    ofrobots committed Jan 22, 2018
    This fixes a bug in the CPU profiler where some ticks were attributed
    to the wrong file.
    
    Original commit message:
      [cpu-profiler] Fix script name when recording inlining info
    
      Use the script name from the shared function info to create an
      inline entry. Otherwise functions are attributed to the wrong file
      in the CpuProfileNode.
    
      See googleapis/cloud-profiler-nodejs#89
    
      Bug: v8:7203, v8:7241
      Change-Id: I8ea31943741770e6611275a9c93375922b934547
      Reviewed-on: https://chromium-review.googlesource.com/848093
      Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
      Commit-Queue: Franziska Hinkelmann <franzih@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50339}
    
    Refs: v8/v8@76c3ac5
    PR-URL: #18298
    Reviewed-By: Michaël Zasso <targos@protonmail.com>
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Older
You can’t perform that action at this time.