prometheus/rules
Julien Duchesne 77a5698190
Ruler Concurrency: Consider __name__ matchers (#16039)
When calculating dependencies between rules, we sometimes run into `{__name__...}` matchers
These can be used the same way as the actual rule names
This will enable even more rules to run concurrently

The new logic is also not slower:
```
julienduchesne@triceratops prometheus % benchstat test-old.txt test.txt
goos: darwin
goarch: arm64
pkg: github.com/prometheus/prometheus/rules
cpu: Apple M3 Pro
                 │ test-old.txt │              test.txt               │
                 │    sec/op    │   sec/op     vs base                │
DependencyMap-11    1.206µ ± 7%   1.024µ ± 7%  -15.10% (p=0.000 n=10)

                 │ test-old.txt │               test.txt               │
                 │     B/op     │     B/op      vs base                │
DependencyMap-11   1.720Ki ± 0%   1.438Ki ± 0%  -16.35% (p=0.000 n=10)

                 │ test-old.txt │              test.txt              │
                 │  allocs/op   │ allocs/op   vs base                │
DependencyMap-11     39.00 ± 0%   34.00 ± 0%  -12.82% (p=0.000 n=10)
```

Signed-off-by: Julien Duchesne <julien.duchesne@grafana.com>
2025-02-17 11:19:16 +00:00
..
fixtures Merge pull request #15669 from rajagopalanand/restore-for-state 2025-01-17 15:37:07 +01:00
alerting.go Rules: Store dependencies instead of boolean (#15689) 2025-01-06 20:48:38 +00:00
alerting_test.go Rules: Store dependencies instead of boolean (#15689) 2025-01-06 20:48:38 +00:00
group.go Ruler Concurrency: Consider __name__ matchers (#16039) 2025-02-17 11:19:16 +00:00
group_test.go rules.NewGroup: Fix when no logger is passed (#15356) 2024-11-21 16:53:06 +01:00
manager.go rulefmt: support YAML aliases for Alert/Record/Expr (#14957) 2025-02-13 20:48:33 +11:00
manager_test.go Ruler Concurrency: Consider __name__ matchers (#16039) 2025-02-17 11:19:16 +00:00
origin.go Decouple ruler dependency controller from concurrency controller 2024-02-02 10:06:37 +01:00
origin_test.go Rules: Store dependencies instead of boolean (#15689) 2025-01-06 20:48:38 +00:00
recording.go Rules: Store dependencies instead of boolean (#15689) 2025-01-06 20:48:38 +00:00
recording_test.go Rules: Store dependencies instead of boolean (#15689) 2025-01-06 20:48:38 +00:00
rule.go Rules: Store dependencies instead of boolean (#15689) 2025-01-06 20:48:38 +00:00