-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
fix(browser): Add ok status to succesful idleSpans
#18139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
size-limit report 📦
|
node-overhead report 🧳Note: This is a synthetic benchmark with a minimal express app and does not necessarily reflect the real-world performance impact in an application.
|
d157380 to
08763cc
Compare
6b535aa to
307b0a2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Incorrect Timeout Assignment Breaks Cancellation
In _restartChildSpanTimeout, the timeout ID is assigned to _idleTimeoutID instead of _childSpanTimeoutID. This causes the child span timeout to overwrite the idle timeout variable, preventing _cancelIdleTimeout from properly canceling the idle timeout and potentially causing incorrect timeout behavior when both timeouts are active.
packages/core/src/tracing/idleSpan.ts#L242-L250
sentry-javascript/packages/core/src/tracing/idleSpan.ts
Lines 242 to 250 in 307b0a2
| function _restartChildSpanTimeout(endTimestamp?: number): void { | |
| _cancelChildSpanTimeout(); | |
| _idleTimeoutID = setTimeout(() => { | |
| if (!_finished && _autoFinishAllowed) { | |
| _finishReason = FINISH_REASON_HEARTBEAT_FAILED; | |
| span.end(endTimestamp); | |
| } | |
| }, childSpanTimeout); | |
| } |
This came up while working on improvements for React Router wildcard routes. Looks like the successful browser
idleSpansare reported withunknownstatus at the moment.