refactor: pass now to qlog#2212
Conversation
Instead of using `QLogStream::add_event_data_now`, which internally calls `std::time::Instant::now()`, pass `now to `QLogStream::add_event_data_with_instant`.
Failed Interop TestsQUIC Interop Runner, client vs. server neqo-latest as client
neqo-latest as server
All resultsSucceeded Interop TestsQUIC Interop Runner, client vs. server neqo-latest as client
neqo-latest as server
Unsupported Interop TestsQUIC Interop Runner, client vs. server neqo-latest as client
neqo-latest as server
|
|
Probably a stupid idea, but can we make |
We could use a thread-local atomic. That said, I think the current approach on I am reluctant to give up the above properties for #2211 alone. Instead of this pull request, or a thread local variable, I suggest we go with #2216. |
|
Closing here in favor of #2216. |
Instead of using
QLogStream::add_event_data_now, which internally callsstd::time::Instant::now(), passnowtoQLogStream::add_event_data_with_instant.This would close #2211. That said, given that this change is very noisy, passing
nowacross all layers and addingnowto many of our public APIs (seeneqo-bin/srcfor examples), I don't think it is worth it.Let me know if you think otherwise.
Alternative: We could only do this change in
neqo-transport, having allneqo-http3functions callingneqo-transportfunctions with a freshstd::time::Instant::now(). That would give us proper qlogs when usingtest_fixtures::Simulatoras that is only concerned withneqo-transportand that would reduce the noise. Downside, additional complexity, as the problem itself is only half fixed, i.e. inneqo-transportbut notneqo-http3.