File tree Expand file tree Collapse file tree 3 files changed +32
-1
lines changed
sentry-opentelemetry/sentry-opentelemetry-bootstrap/src
main/java/io/sentry/opentelemetry
test/kotlin/io/sentry/opentelemetry Expand file tree Collapse file tree 3 files changed +32
-1
lines changed Original file line number Diff line number Diff line change 11# Changelog
22
3+ ### Unreleased
4+
5+ ### Fixes
6+
7+ - Do not store No-Op scopes onto OpenTelemetry Context when wrapping ([#4631](https://github.com/getsentry/sentry-java/pull/4631))
8+ - In 8.18.0 and 8.19.0 the SDK could break when initialized too late.
9+
310## 8.19.0
411
512### Features
Original file line number Diff line number Diff line change @@ -47,7 +47,11 @@ private <V> boolean isOpentelemetrySpan(final @NotNull ContextKey<V> contextKey)
4747 if (sentrySpan != null ) {
4848 forkedScopes .setActiveSpan (sentrySpan );
4949 }
50- return context .with (SENTRY_SCOPES_KEY , forkedScopes );
50+ if (forkedScopes .isNoOp ()) {
51+ return context ;
52+ } else {
53+ return context .with (SENTRY_SCOPES_KEY , forkedScopes );
54+ }
5155 }
5256
5357 private static @ NotNull IScopes forkCurrentScopeInternal (
Original file line number Diff line number Diff line change 1+ package io.sentry.opentelemetry
2+
3+ import io.opentelemetry.context.Context
4+ import io.sentry.Sentry
5+ import io.sentry.opentelemetry.SentryOtelKeys.SENTRY_SCOPES_KEY
6+ import junit.framework.TestCase.assertNull
7+ import junit.framework.TestCase.assertTrue
8+ import kotlin.test.Test
9+
10+ class SentryContextWrapperTest {
11+
12+ @Test
13+ fun `ensure noop scopes are not stored on Context` () {
14+ val context = Context .root()
15+ assertNull(context.get(SENTRY_SCOPES_KEY ))
16+ assertTrue(Sentry .getCurrentScopes().isNoOp)
17+ val wrappedContext = SentryContextWrapper .wrap(context)
18+ assertNull(wrappedContext.get(SENTRY_SCOPES_KEY ))
19+ }
20+ }
You can’t perform that action at this time.
0 commit comments