Skip to content

Commit a7959ef

Browse files
authored
fix(bigtable): raise default connection-recycler MaxAge to 7 days (#19940)
## Summary Raises `DefaultConnectionRecycleConfig` from `MaxAge: 45m / MaxJitter: 5m / RunFrequency: 1m` to `MaxAge: 7d / MaxJitter: 12h / RunFrequency: 1h`. Mitigates the memory growth reported in #14582 by cutting recycle-driven connection churn by roughly two orders of magnitude.
1 parent 18ec117 commit a7959ef

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

bigtable/internal/option/option.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -291,11 +291,17 @@ type ConnectionRecycleConfig struct {
291291
}
292292

293293
// DefaultConnectionRecycleConfig returns the default configuration:
294-
// MaxAge: 45 minutes, Jitter: 5 minutes, RunFrequency: 1 minute, Enabled: true.
294+
// MaxAge: 7 days, MaxJitter: 12 hours, RunFrequency: 1 hour.
295+
//
296+
// MaxAge was raised from 45 minutes to 7 days to limit the recycle rate while
297+
// the upstream gRPC-Go xDS client memory leak is being addressed; the prior
298+
// default churned DirectPath-xDS connections frequently enough to expose that
299+
// leak as steady heap growth
300+
// (see https://github.com/googleapis/google-cloud-go/issues/14582).
295301
func DefaultConnectionRecycleConfig() ConnectionRecycleConfig {
296302
return ConnectionRecycleConfig{
297-
MaxAge: 45 * time.Minute,
298-
MaxJitter: 5 * time.Minute,
299-
RunFrequency: 1 * time.Minute,
303+
MaxAge: 7 * 24 * time.Hour,
304+
MaxJitter: 12 * time.Hour,
305+
RunFrequency: 1 * time.Hour,
300306
}
301307
}

0 commit comments

Comments
 (0)