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

pomerium / pomerium / 21688118919
44%

Build:
DEFAULT BRANCH: main
Ran 04 Feb 2026 09:10PM UTC
Jobs 1
Files 661
Run time 1min
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

04 Feb 2026 08:57PM UTC coverage: 44.438% (+0.04%) from 44.398%
21688118919

push

github

web-flow
feat(grpc): ensure "coordination" between keepalives in http/2 protocols in internal pomerium grpc impls (#6078)

## Summary

For gRPC:
- Ensure on both clients and servers we have:
- `PermitWithoutStream : true` ensures http/2 pings are sent without any
active stream RPCs occurring.
- Ensure that the outbound TCP listener closes unreachable connections
after 20s using TCP_USER_TIMEOUT on the socket
- For consistency, this matches our http/2 ping timeouts across the
board
- Ensure that http/2 pings from envoy to our servers are not sent more
frequently than at a 5 minute interval - to prevent grpc server from
sending GOAWAY with error=ENHANCE_YOUR_CALM to envoy, abruptly closing
the envoy http2 stream, but resulting in outbound clients with a
"half-closed" stream receiving RST_STREAM errors.
- Fixes a potential race condition with expiring contexts resulting in
grpc.ClientConn getting shut on a fresh & valid connection, causing
`ErrClientConnectionClose` on all subsequent connections

## Related issues


[ENG-2657](https://linear.app/pomerium/issue/ENG-2657/core-infinite-redirect-loop-after-switching-databroker-backend)

[ENG-3437](https://linear.app/pomerium/issue/ENG-3437/clustered-databroker-follower-health-graceful-shutdown-error-from-sync)

[ENG-3536](https://linear.app/pomerium/issue/ENG-3536/bug-http2-stream-terminated-by-rst-stream-with-error-code-no-error)

[ENG-3526](https://linear.app/pomerium/issue/ENG-3526/prod-console-is-not-currently-syncing-to-the-proxy)

## User Explanation

N/A

## Checklist

- [X] reference any related issues
- [x] updated unit tests
- [X] add appropriate label (`enhancement`, `bug`, `breaking`,
`dependencies`, `ci`)
- [x] ready for review

52 of 73 new or added lines in 9 files covered. (71.23%)

12 existing lines in 7 files now uncovered.

31468 of 70813 relevant lines covered (44.44%)

115.35 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
21
0.0
0.0% pkg/grpc/client.go

Uncovered Existing Lines

Lines Coverage ∆ File
1
82.24
-0.2% pkg/envoy/resource_monitor_linux.go
1
75.41
0.0% pkg/storage/postgres/registry.go
2
51.43
0.0% internal/databroker/server_clustered_follower.go
2
94.55
3.64% pkg/fanout/receive.go
2
0.0
0.0% pkg/grpc/client.go
2
85.43
-1.32% pkg/grpc/databroker/syncer.go
2
88.18
0.0% pkg/storage/postgres/postgres.go
Jobs
ID Job ID Ran Files Coverage
1 21688118919.1 04 Feb 2026 09:10PM UTC 661
44.44
GitHub Action Run
Source Files on build 21688118919
  • Tree
  • List 661
  • Changed 19
  • Source Changed 9
  • Coverage Changed 17
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #21688118919
  • 16f9752e on github
  • Prev Build on main (#21682080369)
  • Next Build on main (#21731611705)
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