Skip to content

test: add required Loki query semantics matrix#226

Merged
szibis merged 5 commits intomainfrom
ss/loki-compat-matrix
Apr 21, 2026
Merged

test: add required Loki query semantics matrix#226
szibis merged 5 commits intomainfrom
ss/loki-compat-matrix

Conversation

@szibis
Copy link
Copy Markdown
Collaborator

@szibis szibis commented Apr 20, 2026

Summary

  • add a manifest-driven Loki query semantics matrix and run it in the required PR workflow
  • expand positive and negative LogQL coverage for selectors, filters, parsers, metric aggregations, instant post-aggregations, and binary operations
  • fix parity gaps uncovered by the matrix for instant post-aggregation handling, metric stream identity preservation, and stats label shaping

Validation

  • Go test: No tests found
  • Go test: No tests found
  • Go test: No tests found

Follow-up

  • bare parser-metric cardinality after parser stages is a real Loki parity bug, not an accepted unsupported case; this PR documents it explicitly and keeps it out of the required gate until the proxy matches Loki for that shape

@github-actions github-actions bot added size/XL Extra large change scope/translator LogQL translator scope/proxy Proxy core scope/ci CI/CD scope/docs Documentation scope/tests Tests labels Apr 20, 2026
@szibis szibis marked this pull request as ready for review April 20, 2026 18:38
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 20, 2026

PR Quality Report

Compared against base branch main.

Coverage and tests

Signal Base PR Delta
Test count 1811 1838 27
Coverage 89.1% 88.8% -0.3% (regressed)

Compatibility

Track Base PR Delta
Loki API 100.0% 11/11 (100.0%) 0.0% (stable)
Logs Drilldown 100.0% 17/17 (100.0%) 0.0% (stable)
VictoriaLogs 100.0% 11/11 (100.0%) 0.0% (stable)

Compatibility components

Track Component Base PR Delta
Loki API label_values 2/2 (100.0%) 2/2 (100.0%) 0.0% (stable)
Loki API labels 4/4 (100.0%) 4/4 (100.0%) 0.0% (stable)
Loki API metrics 2/2 (100.0%) 2/2 (100.0%) 0.0% (stable)
Loki API otel 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
Loki API query_range 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
Loki API series 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
Logs Drilldown detected_fields 11/11 (100.0%) 11/11 (100.0%) 0.0% (stable)
Logs Drilldown label_values 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
Logs Drilldown level_volume 2/2 (100.0%) 2/2 (100.0%) 0.0% (stable)
Logs Drilldown patterns 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
Logs Drilldown service_logs 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
Logs Drilldown service_selection 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
VictoriaLogs detected_fields 4/4 (100.0%) 4/4 (100.0%) 0.0% (stable)
VictoriaLogs field_values 3/3 (100.0%) 3/3 (100.0%) 0.0% (stable)
VictoriaLogs index_stats 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
VictoriaLogs stream_translation 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
VictoriaLogs synthetic_labels 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)
VictoriaLogs volume_range 1/1 (100.0%) 1/1 (100.0%) 0.0% (stable)

Performance smoke

Lower CPU cost (ns/op) is better. Lower benchmark memory cost (B/op, allocs/op) is better. Higher throughput is better. Lower load-test memory growth is better. Benchmark rows are medians from repeated samples.

Signal Base PR Delta
QueryRange cache-hit CPU cost 1333.0 ns/op 1365.0 ns/op +2.4% (stable)
QueryRange cache-hit memory 200.0 B/op 200.0 B/op 0.0% (stable)
QueryRange cache-hit allocations 7.0 allocs/op 7.0 allocs/op 0.0% (stable)
QueryRange cache-bypass CPU cost 1693.0 ns/op 1628.0 ns/op -3.8% (stable)
QueryRange cache-bypass memory 271.0 B/op 272.0 B/op +0.4% (stable)
QueryRange cache-bypass allocations 7.0 allocs/op 7.0 allocs/op 0.0% (stable)
Labels cache-hit CPU cost 715.9 ns/op 692.0 ns/op -3.3% (stable)
Labels cache-hit memory 48.0 B/op 48.0 B/op 0.0% (stable)
Labels cache-hit allocations 3.0 allocs/op 3.0 allocs/op 0.0% (stable)
Labels cache-bypass CPU cost 826.6 ns/op 852.5 ns/op +3.1% (stable)
Labels cache-bypass memory 53.0 B/op 53.0 B/op 0.0% (stable)
Labels cache-bypass allocations 3.0 allocs/op 3.0 allocs/op 0.0% (stable)
High-concurrency throughput 129740.0 req/s 122980.0 req/s -5.2% (stable)
High-concurrency memory growth 0.4 MB 0.4 MB 0.0% (stable)

State

  • Coverage, compatibility, and sampled performance are reported here from the same PR workflow.
  • This is a delta report, not a release gate by itself. Required checks still decide merge safety.
  • Performance is a smoke comparison, not a full benchmark lab run.
  • Delta states use the same noise guards as the quality gate (percent + absolute + low-baseline checks), so report labels match merge-gate behavior.

@github-actions github-actions bot added size/XL Extra large change and removed size/XL Extra large change labels Apr 20, 2026
@szibis szibis force-pushed the ss/loki-compat-matrix branch from 0c245e7 to 3b99f57 Compare April 20, 2026 19:15
@github-actions github-actions bot added size/XL Extra large change scope/cache Cache layer and removed size/XL Extra large change labels Apr 20, 2026
@szibis szibis force-pushed the ss/loki-compat-matrix branch from 2018e2c to 9623ad8 Compare April 20, 2026 19:42
@github-actions github-actions bot added size/XL Extra large change and removed size/XL Extra large change labels Apr 20, 2026
@szibis szibis force-pushed the ss/loki-compat-matrix branch from fbcf537 to b382860 Compare April 20, 2026 19:46
@github-actions github-actions bot added size/XL Extra large change scope/helm Helm chart and removed size/XL Extra large change labels Apr 20, 2026
@github-actions github-actions bot removed the size/XL Extra large change label Apr 20, 2026
@github-actions github-actions bot added the size/XL Extra large change label Apr 20, 2026
@github-actions github-actions bot added size/XL Extra large change and removed size/XL Extra large change labels Apr 20, 2026
@github-actions github-actions bot added size/XL Extra large change and removed size/XL Extra large change labels Apr 20, 2026
@github-actions github-actions bot added size/XL Extra large change and removed size/XL Extra large change labels Apr 20, 2026
@szibis szibis merged commit 8c91f3a into main Apr 21, 2026
46 checks passed
@szibis szibis deleted the ss/loki-compat-matrix branch April 21, 2026 07:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

scope/cache Cache layer scope/ci CI/CD scope/docs Documentation scope/helm Helm chart scope/proxy Proxy core scope/tests Tests scope/translator LogQL translator size/XL Extra large change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant