Skip to content

[Bug]: wrong timestamps in chromium trace logs #31348

@CezaryKulakowski

Description

@CezaryKulakowski

Preflight Checklist

Electron Version

17.0.0-nightly.20211007

What operating system are you using?

Windows

Operating System Version

Windows 10

What arch are you using?

x64

Last Known Working Electron version

don't know

Steps to reproduce

Start any Electron app with following cmd: --trace-startup=* --trace-startup-file=/tmp/foo.json --trace-startup-duration=7

Expected Behavior

Application starts with no DCHECK and generated trace log is valid.

Actual Behavior

There is a DCHECK on start:

Backtrace:
        base::debug::CollectStackTrace [0x00007FF651866042+18] (o:\base\debug\stack_trace_win.cc:303)
        base::debug::StackTrace::StackTrace [0x00007FF6517BD672+18] (o:\base\debug\stack_trace.cc:197)
        logging::LogMessage::~LogMessage [0x00007FF6517D380E+190] (o:\base\logging.cc:591)
        logging::LogMessage::~LogMessage [0x00007FF6517D4990+16] (o:\base\logging.cc:584)
        base::trace_event::TraceLog::AddTraceEventWithThreadIdAndTimestamps [0x00007FF6518F6688+200] (o:\base\trace_event\trace_log.cc:1802)
        trace_event_internal::AddTraceEventWithThreadIdAndTimestamp [0x00007FF6518F8AC8+296] (o:\base\trace_event\trace_log.cc:2419)
        electron::TracingControllerImpl::AddTraceEventWithTimestamp [0x00007FF64E2A89A1+337] (o:\electron\shell\browser\javascript_environment.cc:287)
        node::performance::PerformanceState::Mark [0x00007FF6522F153E+282] (o:\third_party\electron_node\src\node_perf.cc:93)
        node::Environment::InitializeMainContext [0x00007FF6522C94B4+454] (o:\third_party\electron_node\src\env.cc:464)
        node::Environment::Environment [0x00007FF6522C92D8+108] (o:\third_party\electron_node\src\env.cc:441)
        node::CreateEnvironment [0x00007FF652294929+169] (o:\third_party\electron_node\src\api\environment.cc:347)
        electron::NodeBindings::CreateEnvironment [0x00007FF64E31CD82+1696] (o:\electron\shell\common\node_bindings.cc:492)
        electron::ElectronBrowserMainParts::PostEarlyInitialization [0x00007FF64E292464+228] (o:\electron\shell\browser\electron_browser_main_parts.cc:247)
        content::BrowserMainLoop::EarlyInitialization [0x00007FF650950240+412] (o:\content\browser\browser_main_loop.cc:509)
        content::BrowserMainRunnerImpl::Initialize [0x00007FF650953D14+676] (o:\content\browser\browser_main_runner_impl.cc:110)
        content::BrowserMain [0x00007FF65094F820+240] (o:\content\browser\browser_main.cc:45)
        content::RunBrowserProcessMain [0x00007FF64F4ACC98+112] (o:\content\app\content_main_runner_impl.cc:609)
        content::ContentMainRunnerImpl::RunBrowser [0x00007FF64F4ADC6E+1214] (o:\content\app\content_main_runner_impl.cc:1105)
        content::ContentMainRunnerImpl::Run [0x00007FF64F4AD749+393] (o:\content\app\content_main_runner_impl.cc:972)
        content::RunContentProcess [0x00007FF64F4AC33D+733] (o:\content\app\content_main.cc:394)
        content::ContentMain [0x00007FF64F4AC961+54] (o:\content\app\content_main.cc:422)
        wWinMain [0x00007FF64E1A1535+889] (o:\electron\shell\app\electron_main.cc:291)
        __scrt_common_main_seh [0x00007FF6564D5362+262] (d:\agent\_work\4\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
        BaseThreadInitThunk [0x00007FFB8C857034+20]
        RtlUserThreadStart [0x00007FFB8E782651+33]

If DCHECK is removed trace log is generated but due to bad timestamps it's very hard to analize.

Testcase Gist URL

No response

Additional Information

I've created pr with fix for this issue: #31349

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions