Skip to content

fix(core): Record span outcomes for spans dropped when building a transaction - #25048

Merged
Lms24 merged 1 commit into
developfrom
lms/fix-core-convert-span-outcomes
Oct 12, 2026
Merged

Lms24 merged 1 commit into
developfrom
lms/fix-core-convert-span-outcomes

Conversation

@Lms24

@Lms24 Lms24 commented Oct 5, 2026 •

Copy link
Copy Markdown
Member

With the static trace lifecycle, building a transaction silently dropped two kinds of child spans without a client outcome: children that hadn't finished yet, and spans beyond the 1000 span cap. These are now recorded as invalid (span lacks an end timestamp, so it fails validation) and buffer_overflow (the transaction's fixed-size span buffer overflowed), so dropped span counts show up in client reports.

@github-actions

github-actions Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

size-limit report 📦

⚠️ Warning: Base artifact is not the latest one, because the latest workflow run is not done yet. This may lead to incorrect results. Try to re-run all tests to get up to date results.

Path Size % Change Change
@sentry/browser 29.83 kB - -
@sentry/browser - with treeshaking flags 27.97 kB - -
@sentry/browser - with treeshaking flags tracing without tracing 27.88 kB - -
@sentry/browser (incl. Tracing) 51.96 kB +0.15% +77 B 🔺
@sentry/browser (incl. Tracing + Span Streaming) 51.96 kB +0.12% +62 B 🔺
@sentry/browser (incl. Tracing, Profiling) 54.91 kB +0.15% +80 B 🔺
@sentry/browser (incl. Tracing, Replay) 91.69 kB +0.07% +55 B 🔺
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 80.56 kB +0.09% +65 B 🔺
@sentry/browser (incl. Tracing, Replay with Canvas) 96.4 kB +0.06% +54 B 🔺
@sentry/browser (incl. Tracing, Replay, Feedback) 109.39 kB +0.06% +59 B 🔺
@sentry/browser (incl. Feedback) 47.35 kB - -
@sentry/browser (incl. sendFeedback) 34.87 kB - -
@sentry/browser (incl. FeedbackAsync) 39.99 kB - -
@sentry/browser (incl. Metrics) 30.86 kB - -
@sentry/browser (incl. Logs) 31.15 kB - -
@sentry/browser (incl. Metrics & Logs) 31.79 kB - -
@sentry/react 31.68 kB - -
@sentry/react (incl. Tracing) 54.28 kB +0.13% +69 B 🔺
@sentry/vue 37.95 kB +0.17% +64 B 🔺
@sentry/vue (incl. Tracing) 54.87 kB +0.11% +59 B 🔺
@sentry/svelte 29.86 kB - -
@sentry/remix (Remix 3 client bundle) 56.96 kB +0.16% +87 B 🔺
CDN Bundle 31.57 kB - -
CDN Bundle (incl. Tracing) 52.46 kB +0.14% +70 B 🔺
CDN Bundle (incl. Logs, Metrics) 33.77 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) 54.41 kB +0.12% +62 B 🔺
CDN Bundle (incl. Replay, Logs, Metrics) 74.69 kB - -
CDN Bundle (incl. Tracing, Replay) 90.13 kB +0.08% +70 B 🔺
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 92.06 kB +0.07% +60 B 🔺
CDN Bundle (incl. Tracing, Replay, Feedback) 96.28 kB +0.07% +59 B 🔺
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 98.22 kB +0.04% +33 B 🔺
CDN Bundle - uncompressed 93.08 kB - -
CDN Bundle (incl. Tracing) - uncompressed 155.81 kB +0.13% +187 B 🔺
CDN Bundle (incl. Logs, Metrics) - uncompressed 99.62 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 161.76 kB +0.12% +187 B 🔺
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 229.65 kB - -
CDN Bundle (incl. Tracing, Replay) - uncompressed 275.97 kB +0.07% +187 B 🔺
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 281.91 kB +0.07% +187 B 🔺
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 289.68 kB +0.07% +187 B 🔺
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 295.61 kB +0.07% +187 B 🔺
@sentry/nextjs (client) 56.64 kB +0.11% +57 B 🔺
@sentry/sveltekit (client) 52.34 kB +0.15% +78 B 🔺
@sentry/core/server 40.93 kB +0.17% +68 B 🔺
@sentry/core/browser 13.78 kB +0.49% +67 B 🔺
@sentry/node 151.73 kB +0.04% +53 B 🔺
@sentry/node/import (ESM hook with diagnostics-channel injection) 83.77 kB - -
@sentry/node - without tracing 94.31 kB +0.08% +73 B 🔺
@sentry/node - without channel injection 129.94 kB +0.07% +88 B 🔺
@sentry/aws-serverless 102.47 kB +0.06% +52 B 🔺
@sentry/cloudflare (withSentry) - minified 210.17 kB +0.09% +181 B 🔺
@sentry/cloudflare (withSentry) 521.08 kB +0.09% +459 B 🔺
@sentry/nextjs/cloudflare (withSentry) - minified 227.84 kB +0.08% +181 B 🔺

View base workflow run

…nsaction

Unfinished child spans are now reported as `invalid` and spans cut off
by the 1000 span cap as `buffer_overflow`. Unfinished children are not
counted when the deferred capture strategy tracks captured spans, since
those are sent later as orphan transactions.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@Lms24
Lms24 force-pushed the lms/fix-core-convert-span-outcomes branch from 5131f37 to 15d496c Compare October 9, 2026 11:13
@Lms24
Lms24 marked this pull request as ready for review October 9, 2026 11:13
@Lms24 Lms24 self-assigned this Oct 9, 2026
@Lms24
Lms24 requested review from andreiborza and chargome October 9, 2026 11:13
@Lms24
Lms24 merged commit 1350965 into develop Oct 12, 2026
360 checks passed
@Lms24
Lms24 deleted the lms/fix-core-convert-span-outcomes branch October 12, 2026 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants