feat(bigtable): add pacemaker in connpool#13862
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces two new background mechanisms to the Bigtable connection pool: a connection recycler and a pacemaker. The connection recycler proactively replaces connections based on their age to prevent issues with long-lived connections. The pacemaker is an observability tool that monitors and reports goroutine scheduling delays, providing insights into application health. Additionally, the configuration for the dynamic channel pool has been inverted from an opt-in (Enable...) to an opt-out (Disable...) model, making it enabled by default.
The implementation looks solid, with corresponding configurations and tests for the new features. I've left a few minor comments regarding typos, comment clarity, and a test assertion that could be strengthened.
be11757 to
12db69c
Compare
0677f85 to
cb02816
Compare
cb02816 to
b741073
Compare
PR created by the Librarian CLI to initialize a release. Merging this PR will auto trigger a release. Librarian Version: v0.8.0 Language Image: us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/librarian-go@sha256:19bb93e8f1f916c61b597db2bad65dc432f79baaabb210499d7d0e4ad1dffe29 <details><summary>bigtable: 1.43.0</summary> ## [1.43.0](bigtable/v1.42.0...bigtable/v1.43.0) (2026-03-16) ### Features * Add support for creating Instance with tags (#13459) ([1bce843](1bce843e)) * support tiered storage (#13793) ([39a25b9](39a25b92)) * add handling of longupdown metrics aka gauge (#13871) ([519ed9b](519ed9b0)) * Use direct access when supported. Guarded by enabling… (#13873) ([5ea1f5f](5ea1f5f9)) * add preemptive connection recycler (#13860) ([6b69ee3](6b69ee38)) * make downscalling less aggressive (#14123) ([7ac72cc](7ac72cc8)) * add pacemaker in connpool (#13862) ([9af047f](9af047f7)) * populate ip protocol for direct access checker and rename a method to be concise (#14011) ([9c5e655](9c5e6551)) * add connection factory to abstract connection (#13755) ([b08ea15](b08ea15f)) * make pow of 2 default lb policy (#14131) ([b5f7bf2](b5f7bf27)) * derive conn pool from resolver (#14147) ([b903e29](b903e299)) * add load balancing penalty for channel (#14149) ([bb64998](bb649988)) * cap increase in conn for dynamic chan pool (#14144) ([e0701a4](e0701a46)) * switch to rand v2 (#14008) ([ee6f425](ee6f4251)) ### Bug Fixes * slighly change instruction for direct access (#14119) ([7dd4948](7dd4948d)) * refactor bigtable.go into separate file path per interfaces (#13818) ([c8ae2e2](c8ae2e2a)) </details>
No description provided.