• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pomerium / pomerium / 26511246790
52%

Build:
DEFAULT BRANCH: main
Ran 27 May 2026 12:42PM UTC
Jobs 1
Files 716
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

27 May 2026 12:30PM UTC coverage: 45.876% (+0.08%) from 45.793%
26511246790

push

github

web-flow
core/databroker: add a cache invalidator and invalidate cache when the storage backend changes (#6357)

## Summary
Clear the cache when the databroker backend changes.

- There's a new cache invalidator that adds gRPC interceptors. For any
message that returns the server version, if we detect that the server
version changes, we invalidate the cache.
- Also invalidate the cache in the databroker server when a new backend
is created.
- Since the cache is global, invalidating it in all-in-one mode is
sufficient to invalidate it for the proxy and authorize services. In
split mode detecting the new server version from gRPC methods should
hopefully also clear the cache fairly quickly since we do `Sync` and
`SyncLatest` streams. When the backend server version changes `Sync`
should abort, and we should try to do a `SyncLatest` which should return
a `Versions` message where we can pick up the new server version.

## Related issues
-
[ENG-4016](https://linear.app/pomerium/issue/ENG-4016/pomerium-does-not-recover-from-a-runtime-databroker-storage-type-swap)

## AI disclosure
none

## Checklist

- [x] reference any related issues
- [x] updated unit tests
- [ ] add appropriate label (`enhancement`, `bug`, `breaking`,
`dependencies`, `ci`)
- [x] disclosed AI usage (or wrote "none") per AI_POLICY.md
- [x] ready for review

55 of 61 new or added lines in 5 files covered. (90.16%)

217 existing lines in 7 files now uncovered.

36791 of 80197 relevant lines covered (45.88%)

305.65 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
69.52
-0.31% internal/databroker/server_backend.go
2
93.94
pkg/grpc/databroker/cache.go
1
86.08
-1.1% pkg/storage/cache.go

Coverage Regressions

Lines Coverage ∆ File
90
2.32
-0.05% pkg/envoy/envoy.go
46
2.63
0.0% internal/testenv/environment.go
45
50.53
0.53% config/config.go
27
79.4
-1.08% config/envoyconfig/bootstrap.go
4
74.26
-1.18% internal/databroker/config_source.go
3
95.83
-3.13% pkg/identity/manager/schedulers.go
2
48.66
0.18% internal/databroker/server_clustered_follower.go
Jobs
ID Job ID Ran Files Coverage
1 26511246790.1 27 May 2026 12:42PM UTC 716
45.88
GitHub Action Run
Source Files on build 26511246790
  • Tree
  • List 716
  • Changed 16
  • Source Changed 9
  • Coverage Changed 16
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26511246790
  • 046a073c on github
  • Prev Build on main (#26454349384)
  • Next Build on main (#26511145226)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc