Skip to content
Permalink
Browse files

Revert "src: remove trace_sync_io_ from env"

This reverts commit 7fa5f54.

The reverted commit breaks the logic behind --trace-sync-io, it should
be enabled only at a certain point in time, while that commit enables
it from the very start, causing warnings be printed for all sync io
instead of sync io after the first tick of the event loop as documented.

Fixes: #28913
Refs: #22726
Refs: https://nodejs.org/api/cli.html#cli_trace_sync_io
PR-URL: #28926
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
  • Loading branch information...
ChALkeR authored and BridgeAR committed Aug 1, 2019
1 parent bdd442f commit 4a747f6037c7a589ae88b7a0238fea4218cce471
Showing with 5 additions and 2 deletions.
  1. +1 −1 src/env-inl.h
  2. +1 −1 src/env.cc
  3. +1 −0 src/env.h
  4. +2 −0 src/node_main_instance.cc
@@ -465,7 +465,7 @@ inline void Environment::set_printed_error(bool value) {
}

inline void Environment::set_trace_sync_io(bool value) {
options_->trace_sync_io = value;
trace_sync_io_ = value;
}

inline bool Environment::abort_on_uncaught_exception() const {
@@ -567,7 +567,7 @@ void Environment::StopProfilerIdleNotifier() {
}

void Environment::PrintSyncTrace() const {
if (!options_->trace_sync_io) return;
if (!trace_sync_io_) return;

HandleScope handle_scope(isolate());

@@ -1250,6 +1250,7 @@ class Environment : public MemoryRetainer {
const uint64_t timer_base_;
std::shared_ptr<KVStore> env_vars_;
bool printed_error_ = false;
bool trace_sync_io_ = false;
bool emit_env_nonstring_warning_ = true;
bool emit_err_name_warning_ = true;
size_t async_callback_scope_depth_ = 0;
@@ -111,6 +111,8 @@ int NodeMainInstance::Run() {
env->async_hooks()->pop_async_id(1);
}

env->set_trace_sync_io(env->options()->trace_sync_io);

{
SealHandleScope seal(isolate_);
bool more;

0 comments on commit 4a747f6

Please sign in to comment.
You can’t perform that action at this time.