Skip to content

tracing(csharp): inline Dispose path missing result.bytes_downloaded (CloudFetch has it) #485

@eric-wang-1990

Description

@eric-wang-1990

Severity: Low

Observation

DatabricksCompositeReader.Dispose span shape is inconsistent between the CloudFetch and Inline result paths:

  • CloudFetch path (CloseOperationE2ETest.DisposeEmitsCloseOperationEvent(description: "CloudFetch")): carries reader.active_reader_type = "CloudFetchReader" AND result.bytes_downloaded = 253717688
  • Inline path (Inline+NoDirectResults, Inline+DirectResults): carries reader.active_reader_type only — no bytes counter

Total bytes consumed by the result reader is exactly the kind of debugging signal that should be present everywhere a Dispose happens.

Suggested fix

Track total bytes read in DatabricksReader (Inline path) and surface as result.bytes_read on its Dispose span, mirroring CloudFetch.

Evidence

  • Traces.CloseOperationE2ETest.20260527_144932/ — 3 Dispose spans, CloudFetch carries the byte counter, two Inline variants don't

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions