-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Minor - P4
-
None
-
Component/s: Observability
-
None
-
Needed
-
Summary
Two problems in the OpenTelemetry operation spec tests make them fail or require local workarounds rather than testing what they intend to.
The update.json assertion on the update statement requires it to contain exactly a
query and an update document. Drivers that also send the multi and upsert fields at
their default values fail it, even though the CRUD spec's own tests are written to
accept both shapes. The assertion should tolerate either.
Nine of the operation fixtures declare no initial data but modify collections. The unified runner only cleans up collections before a test when a fixture declares some, so fixtures that
create collections leave them behind and are not repeatable. Running the suite twice in one process makes the second pass collide with the first pass's leftovers.
Motivation
Who is the affected end user?
Driver teams implementing the OpenTelemetry specification, and anyone maintaining these tests. No impact on application developers.
How does this affect the end user?
Both problems force local deviations from the shared tests. A driver either carries
patches to the fixtures or skips the affected tests, and a skipped test silently removes coverage of the operation it was written for.
How likely is it that this problem or use case will occur?
Main path for both. Any driver that sends the update fields at their defaults hits the first, and any driver that runs the fixtures more than once per process hits the second.
If the problem does occur, what are the consequences and how severe are they?
Minor. Spurious test failures and lost coverage, with no functional impact. The risk is that a real tracing regression goes unnoticed in an operation whose test is skipped.
Is this issue urgent?
No.
Is this ticket required by a downstream team?
No.
Is this ticket only for tests?
Yes. No functional impact.
Acceptance Criteria
- The update assertion passes both for drivers that send multi and upsert at their default values and for drivers that omit them.
- Fixtures that create or modify collections declare initial data so the runner cleans up beforehand, making every fixture repeatable within a single process.
- No driver needs a local patch or a skip to run these tests, and none is left carrying one for either problem.
- The OpenTelemetry spec tests pass on all supported server versions with no skips attributable to either problem.
- split to
-
CDRIVER-6403 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
CSHARP-6150 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
CXX-3546 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
GODRIVER-4071 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
JAVA-6268 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
NODE-7742 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
PHPLIB-1922 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
RUBY-3926 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
RUST-2464 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- Blocked
-
-
PYTHON-5979 Fix over-strict update assertion and missing initialData in OpenTelemetry spec tests
-
- In Progress
-