Skip to content

fix(otel): end recording spans on non-terminal - #696

Open
ayushiahjolia wants to merge 1 commit into
otel-shared-trace-pr5-docsfrom
otel-shared-trace-pr671-end-spans
Open

fix(otel): end recording spans on non-terminal#696
ayushiahjolia wants to merge 1 commit into
otel-shared-trace-pr5-docsfrom
otel-shared-trace-pr671-end-spans

Conversation

@ayushiahjolia

@ayushiahjolia ayushiahjolia commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Issue #, if available:
#642

Description of changes:

  • Both OTel plugins abandoned recording spans without ending them when a durable execution returned a non-terminal status, violating the OTel requirement that every created span be ended.
  • The execution plugin dropped open operation spans on PENDING/RETRY, and both plugins dropped the execution-scoped Workflow span on non-terminal invocations.
  • Replace the recording Workflow span with a non-recording deterministic placeholder held during the invocation.
  • The placeholder still carries the deterministic Workflow SpanContext - now on the shared execution trace, parented to the execution ancestor - so it parents and links operation spans, keeps the Workflow current for auto-instrumented spans, and serves log correlation, without leaving a recording span to abandon.
  • The recording Workflow span is created and ended exactly once, only on a terminal status, anchored at the execution start time.
  • The execution plugin now also ends any operation spans still open at invocation end, matching the invocation plugin. Cross-invocation correlation is unchanged: an operation that resumes later still gets its authoritative span from on_operation_end.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@ayushiahjolia
ayushiahjolia force-pushed the otel-shared-trace-pr671-end-spans branch from 95550ea to 0e1fd55 Compare September 1, 2026 18:37
@ayushiahjolia
ayushiahjolia marked this pull request as ready for review September 1, 2026 18:48
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.

1 participant