Added
- Query Planner: New
pkg/query/queryoptpackage for building optimizations - Added tracing to request validation (#2950)
Changed
- Updated CI so that Postgres tests run against v18 which is GA and not against v13 which is EOL (#2926)
- Use
protovalidateinstead ofprotoc-gen-validatefor request validation (#2863, #2596, #2959) - Query Planner optimization: in Check requests, prune branches that cannot lead to the subject type specified (#2968)
- Added
lrandlsto--experimental-query-planfor those endpoints, as well as in-memory statistics for optimizing the plans (#2929)
Fixed
- Regression introduced in 1.49.2: missing spans in ReadSchema calls (#2947)
- Long standing bug in the way postgres revisions were being compared. Sometimes revisions that were actually overlapping were erroneously being ordered. (#2958)
- Prevent panics in schema compiler, which can reproduce if using the VSCode extension or zed (#2971)
What's Changed
- chore: release 1.49.2 by @miparnisari in #2935
- chore: use correct logger in import logic by @tstirrat15 in #2937
- chore: walk postgres versions by @tstirrat15 in #2926
- chore: update versions in datastore support tags by @tstirrat15 in #2938
- chore: update grafana dashboards by @miparnisari in #2940
- refactor: remove metrics that are not useful or not written to by @miparnisari in #2941
- test(query): Add a new benchmark for wide arrows by @barakmich in #2927
- fix(query): fix arrow reversal tagging the subrelation incorrectly by @barakmich in #2943
- chore: use protovalidate interceptor instead of protoc-gen-validate interceptor by @tstirrat15 in #2863
- ci: add concurrency settings to workflows by @tstirrat15 in #2945
- chore: fix regression from #2912 - tracing in ReadSchema calls by @miparnisari in #2947
- chore: use dockerhub instead of gcr by @tstirrat15 in #2949
- chore: bump memory available to integration tests by @tstirrat15 in #2951
- feat(query): add a PlanAdvisor framework in place of StatisticsSource by @barakmich in #2928
- chore: add ctx to RevisionedReader.ReadSchema() by @miparnisari in #2952
- test: prevent duplicate metrics collector registration attempted by @miparnisari in #2957
- chore(datastore): expose GC interfaces, errors, and context proxy by @ecordell in #2942
- Update buf and use protovalidate by @tstirrat15 in #2596
- test: update test ObservableProxy so it runs faster by @miparnisari in #2960
- test: add tests for migrate command by @ivanauth in #2822
- test: add unit tests for consistency/forcefull.go by @ivanauth in #2916
- chore(deps): bump the github-actions group across 1 directory with 5 updates by @dependabot[bot] in #2939
- feat: add tracing to proto validation by @miparnisari in #2950
- chore: clean up all unused parameters by @mishto in #2931
- chore: pre-warm validator caches by @tstirrat15 in #2959
- fix: postgres revision compare for semi-disjoint overlapping transactions by @jakedt in #2958
- chore: add singleflightcheck analyzer to enforce context-aware singleflight by @josephschorr in #2954
- fix: bump to golang v1.25.8 by @barakmich in #2969
- refactor(query): add QueryDatastoreReader to act as an implementation shim for datastores by @barakmich in #2956
- chore: remove unused counting proxy by @miparnisari in #2967
- refactor: create new
queryoptpackage to target query plan optimizations by @barakmich in #2970 - feat(qp): prune branches that cannot lead to the subject type of the … by @miparnisari in #2968
- chore(services): store observed counts in permissionsServer, add LR/LS flags by @barakmich in #2929
- fix: prevent panics in case of nils by @miparnisari in #2971
New Contributors
Full Changelog: v1.49.2...v1.50.0
Docker Images
This release is available at authzed/spicedb:v1.50.0, quay.io/authzed/spicedb:v1.50.0, ghcr.io/authzed/spicedb:v1.50.0