Historian conformance suites have no Uncertain samples for PercentGood/DurationGood #810

Closed
opened 2026-11-10 21:39:41 -05:00 by dohertj2 · 1 comment
Owner

Found while fixing #796. SqlServer.IntegrationTests passed 195/195 on both the broken and the fixed SdkAggregateOracle, so the SQL Server (and QuestDB) conformance data never feeds PercentGood/DurationGood an Uncertain sample — the suites could not have caught the 1.5.378.182 semantic change (see also #809). The unit-level SdkAggregateParityTests now cover it (fix/796 bd6d3fc2).

Extend the integration conformance datasets in tests/Drivers/Historian.Conformance with Good/Uncertain/Bad mixes, an all-Uncertain interval (Mantis 0006166: 0% Good and 0% Bad), and a partial-data interval, asserting Part 13 values on both backends.

Found while fixing #796. SqlServer.IntegrationTests passed 195/195 on both the broken and the fixed SdkAggregateOracle, so the SQL Server (and QuestDB) conformance data never feeds PercentGood/DurationGood an Uncertain sample — the suites could not have caught the 1.5.378.182 semantic change (see also #809). The unit-level SdkAggregateParityTests now cover it (fix/796 bd6d3fc2). Extend the integration conformance datasets in tests/Drivers/Historian.Conformance with Good/Uncertain/Bad mixes, an all-Uncertain interval (Mantis 0006166: 0% Good and 0% Bad), and a partial-data interval, asserting Part 13 values on both backends.
dohertj2 added the type:testpriority:p3 labels 2026-11-10 21:39:41 -05:00
Author
Owner

Done on master (merge 418d0bbb; 87b0c18f). New QualityMixConformance datasets: tag Q (Good/Uncertain/Bad mixes incl. two all-Uncertain intervals → 0% Good/0% Bad, Mantis 0006166) and tag QP (partial data), expected values hand-derived from Part 13 and the oracle checked against them. The data has teeth: with the SDK-as-is oracle 8 new tests fail per backend; with the fixed oracle SQL Server 207/207, QuestDB 245 + 1 pre-existing skip. No backend defects. New SDK divergence found (TimeAverage/Total with an Uncertain first sample in a late-start interval) → #821 (relates to #809). Follow-ups: #820, #822. Gateway backend not covered (needs AVEVA).

Done on master (merge 418d0bbb; 87b0c18f). New `QualityMixConformance` datasets: tag Q (Good/Uncertain/Bad mixes incl. two all-Uncertain intervals → 0% Good/0% Bad, Mantis 0006166) and tag QP (partial data), expected values hand-derived from Part 13 and the oracle checked against them. The data has teeth: with the SDK-as-is oracle 8 new tests fail per backend; with the fixed oracle SQL Server 207/207, QuestDB 245 + 1 pre-existing skip. No backend defects. New SDK divergence found (TimeAverage/Total with an Uncertain first sample in a late-start interval) → #821 (relates to #809). Follow-ups: #820, #822. Gateway backend not covered (needs AVEVA).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dohertj2/lmxopcua#810