fix(otel): Avoid deadlock in SentryContextStorage.root() with virtual threads (#5234)
* fix(otel): Avoid deadlock in SentryContextStorage.root() with virtual threads SentryContextStorage.root() called SentryContextWrapper.wrap() which triggers scope.clone() and acquires locks. Under virtual threads, ReentrantLock.unlock() can re-enter root() via OpenTelemetry executor instrumentation on ForkJoinPool.execute(), causing a deadlock. Return the default OTel root context without wrapping. Scopes are resolved later via attach() or Sentry.getCurrentScopes(). Fixes GH-5226 Co-Authored-By: Claude <noreply@anthropic.com> * changelog --------- Co-authored-by: Claude <noreply@anthropic.com>
A
Alexander Dinauer committed
f2c2e7d827d945de83595d7fc62579e8b0dc085e
Parent: a7fc366
Committed by GitHub <noreply@github.com>
on 3/26/2026, 10:16:02 AM