Repository navigation
[MCC-1554793] - Python Lib - Trace ID Propagation - #69
glondhe-mdsol wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Moderate API compatibility and payload-decoding issues remain unresolved.
Review effort: Lite
Findings: 4
Open (4)
What changed in this PR
Adds server trace ID propagation across transport, service, and client layers, with trace-aware result models and lazy dataset frames.
Changes:
- Extracts trace IDs from Flight metadata and JSON responses.
- Adds trace-aware models for datasets, fetches, publishing, and datetime formats.
- Updates lazy frames and related tests for wrapped results.
| File | Summary |
|---|---|
tests/test_transport_trace_metadata.py |
Tests Flight metadata decoding. |
tests/test_publish.py |
Tests publish trace propagation. |
tests/test_get_datetime_formats.py |
Tests datetime trace propagation. |
tests/test_get_datasets_paginated.py |
Tests dataset and frame result changes. |
tests/test_fetch_data.py |
Tests fetch trace propagation. |
tests/test_dry_publish.py |
Tests dry-publish trace propagation. |
dataconnect/transport/models.py |
Adds trace-aware transport result models. |
dataconnect/transport/base.py |
Updates transport contracts. |
dataconnect/transport/arrow_flight/transport.py |
Extracts trace IDs; moderate compatibility issues remain for legacy payloads and non-object metadata, plus a documentation nit. |
dataconnect/service/mappers.py |
Maps publish trace IDs. |
dataconnect/service/default.py |
Propagates trace IDs through service methods. |
dataconnect/service/base.py |
Updates service interfaces. |
dataconnect/models.py |
Adds public trace-aware results; wrapped fetch results break documented DataFrame usage. |
dataconnect/client.py |
Exposes updated result APIs; documented iterable and DataFrame compatibility changes require migration or compatibility preservation. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
c86c148 to
5027490
Compare
60fe7de to
8141caa
Compare
daa49fb to
a1ac87a
Compare
There was a problem hiding this comment.
🟡 Changes recommended
Interrupted streams can lose already-received trace IDs, and the new datetime-format envelope lacks transport tests.
3 open findings
3 resolved since last review
🧠 Review effort: Balanced
Give feedback about Copilot approvals in this survey to enter a drawing for a $150 gift card.
a1ac87a to
5f86aa6
Compare
There was a problem hiding this comment.
🟡 Changes recommended
Targeted checks confirmed trace loss in quoted wrapped errors and interrupted datetime-format streams.
2 open findings
3 resolved since last review
🧠 Review effort: Balanced
Give feedback about Copilot approvals in this survey to enter a drawing for a $150 gift card.
5f86aa6 to
2879bda
Compare
There was a problem hiding this comment.
🔵 Needs a closer look
Three moderate issues remain in error parsing and multi-result trace metadata handling.
0 open findings
2 resolved since last review
🧠 Review effort: Lite
Give feedback about Copilot approvals in this survey to enter a drawing for a $150 gift card.
2879bda to
7c977bf
Compare


feature
MCC-1554793 - Python Lib - Trace ID Propagation
Checklist
git commit --amend --no-editcommand to reduce commit messages when making small file changes (like changing linespacing).tests/folder.doc/folder.Changes Summary
Why: Users need the trace ID for support reports, without changing return types.
Changes
Deployment Notes
In addition to IAC/code, add any notes for reviewer should know.