Telemetry: stop retrying into 429s, honour Retry-After, fix userAgent#354
Conversation
1300f1a to
fbb0263
Compare
After v1.11.0 enabled telemetry by default via the server feature flag, high-QPS workloads produced excessive 429s on /telemetry-ext. Three issues compounded: 1. Double-retry. The exporter ran its own retry loop on top of the retryablehttp-wrapped HTTP client (internal/client.RetryableClient), which already retries 429/5xx with Retry-After. Result: up to RetryMax * (MaxRetries+1) HTTP attempts per export, all collapsed into one circuit-breaker outcome — so the breaker barely opened. 2. Untraceable in access logs. Telemetry POSTs and feature-flag GETs sent no User-Agent, so 429s were tagged Go-http-client/1.1 and could not be attributed to godatabrickssqlconnector by version. 3. High request volume. FlushInterval=5s, BatchSize=100. Changes: - telemetry/exporter.go: drop the retry loop entirely. doExport now makes a single HTTP request; transient retries (429/5xx, Retry-After) are owned by the underlying retryablehttp client. Each export call → exactly one breaker outcome. - telemetry/exporter.go, telemetry/featureflag.go: set User-Agent header on telemetry POST and feature-flag GET. Built once at the connector site (buildUserAgent in connector.go), mirroring internal/client/client.go format (DriverName/DriverVersion + UserAgentEntry + agent product), and plumbed via TelemetryInitOptions.UserAgent. - telemetry/config.go: FlushInterval 5s → 30s, BatchSize 100 → 200. Remove MaxRetries/RetryDelay from telemetry.Config and TelemetryInitOptions; telemetry_retry_count/_delay DSN params still parse for backwards compat but are no-ops. - telemetry/circuitbreaker.go: lower minimumNumberOfCalls 20 → 10 (so low-traffic clients can still trip the breaker on a sustained outage now that each export is one signal), and raise waitDurationInOpenState 30s → 60s (respect typical Retry-After). - Tests: removed obsolete retry/backoff tests; added single-attempt assertion across 4xx/429/5xx; added User-Agent assertions on both endpoints. Co-authored-by: Isaac
fbb0263 to
d47bf99
Compare
… first flush The previous commit removed the exporter's inner retry loop, but the retryablehttp layer (RetryMax=4) was still amplifying each telemetry export into up to 5 attempts on a 429 — defeating the breaker because only the final outcome was observed. - internal/client: add WithSkipRateLimitRetry context helper. RetryPolicy treats 429 as non-retryable when the flag is set; 5xx and transport errors are unaffected. Set on telemetry POSTs and feature-flag GETs so each rate-limited request is exactly one HTTP transaction = one breaker signal. - telemetry/circuitbreaker: record server-provided Retry-After deltas from 429 responses; the open-state wait becomes max(waitDurationInOpenState, hint). Hint cleared on the next half-open -> closed transition. - telemetry/aggregator: offset the first flush by a random [0, FlushInterval) so a fleet of clients booted together does not phase-align bursts. Co-authored-by: Isaac
- Doc accuracy on retry semantics: WithSkipRateLimitRetry only suppresses 429s. Generic 5xx and transport errors are governed by ClientMethod, so telemetry contexts (which set no ClientMethod) get one-shot semantics on those failure modes; 503 still retries via the method-agnostic path. Updated SkipRateLimitRetry godoc and doExport comment to match. - Drop dead TelemetryRetryCount / TelemetryRetryDelay fields from UserConfig. The DSN keys are still consumed (so they do not leak into session params) but no longer stored. Cleaned up assertions in config_test.go and connector_test.go. - Clear retryAfterHint when the breaker transitions Open -> Half-Open, so a stale hint cannot extend a later reopen that did not carry its own Retry-After. Collapsed the two-step lock dance in execute() into one critical section. Updated godoc. - Guard rand.Int63n against a zero flushInterval in flushLoop. - Document the first-caller-wins User-Agent behaviour on the per-host telemetry client singleton, since later connections on the same host reuse the cached client. Co-authored-by: Isaac
- gofmt -s on connector_test.go, internal/config/config_test.go, telemetry/exporter.go (struct alignment + missing blank line). - internal/config/config.go: telemetry_retry_count is parsed for backwards compat then discarded, so call extract (2 returns) rather than extractAsInt (3 returns) to satisfy dogsled. - telemetry/circuitbreaker.go: drop the now-unused setState helper. execute() now transitions to half-open via setStateUnlocked under an already-held lock. Co-authored-by: Isaac
|
Must-fix
Should-fix
Test coverage
|
|
Thanks for the thorough review. All ten items addressed in a follow-up commit on this branch: Must-fix
Should-fix Test coverage All existing tests still pass; This comment was generated with GitHub MCP. |
- Broaden WithSkipRateLimitRetry → WithSkipTransientRetries to cover 429 AND 503; telemetry now collapses to one HTTP transaction per export across all transient codes, eliminating the 5xx asymmetry and any double-honour of Retry-After. - Fix latent bug: RetryPolicy returned (false, err) on the skip path, which made net/http's wrapper drop the response. Return (false, nil) so the exporter can see and act on Retry-After. - Parse Retry-After on 503 in addition to 429. - Log a one-time WARN when deprecated telemetry_retry_count / telemetry_retry_delay DSN params are present. - Document the breaker's detection-time / window-size / minimum-calls rationale in defaultCircuitBreakerConfig. - Extract BuildUserAgent into internal/client/useragent.go as the single source of truth for the Thrift + telemetry + feature-flag user-agent string. - Tests: TestIsRetryableServerResponse, TestExport_503RecordsRetryAfter, TestExport_SingleAttemptThroughRetryableClient (integration test using the real RetryableClient), TestCircuitBreaker_RetryAfterHintTakesMax, TestCircuitBreaker_HintClearedBeforeHalfOpenFailRecycle. Co-authored-by: Isaac
- RetryPolicy: only read Retry-After when we're going to use it (skip-transient-retries branch returns early). - Add BuildUserAgent table test covering plain / UserAgentEntry / detected-agent / combined paths; test clears known agent env vars first so the host environment can't leak in. - Gate each legacy-DSN-param deprecation warning behind a sync.Once so apps that reparse the same DSN per connection don't flood the log with the same notice. Co-authored-by: Isaac
gopalldb
left a comment
There was a problem hiding this comment.
Minor comment on host-key used in circuit breaker
#364) ## Summary - `clientManager` and `circuitBreakerManager` keyed their maps by the raw host string, so DSN variants like `example.com`, `example.com/`, and `https://example.com` created separate telemetry clients and separate circuit breakers for the same logical host. That fragments trip state and defeats the per-host consolidation the managers are designed to do. - Add `normalizeHostKey` (lowercase, trim whitespace, strip `http(s)://`, trim trailing slashes) and use it for all registry lookups in `clientManager.getOrCreateClient`, `clientManager.releaseClient`, and `circuitBreakerManager.getCircuitBreaker`. - The host string flowing into URL construction is unchanged — first-caller-wins, matching the existing user-agent semantics documented on `getOrCreateClient`. Addresses Gopal's review comment on #354: #354 (comment)... (host normalization on `telemetry/exporter.go:62`). ## Test plan - [x] `TestNormalizeHostKey` — covers scheme stripping, lowercase, trim trailing slash, whitespace, empty string - [x] `TestClientManager_HostVariantsShareClient` — four DSN variants of the same host share a single telemetry client; release via a different variant still cleans up - [x] `TestCircuitBreakerManager_HostVariantsShareBreaker` — same coverage for the breaker registry - [x] Full `go test ./telemetry/...` passes This pull request and its description were written by Isaac.
## Summary Bump `DriverVersion` to `1.12.0` and add the `v1.12.0` section to `CHANGELOG.md`. ### Notable changes since v1.11.1 - Retry transient S3 errors in CloudFetch downloads and staging PUT/GET/REMOVE operations (#355, #361) - Telemetry: normalize host key for per-host client + breaker registries; stop retrying into 429s, honour Retry-After, fix userAgent (#354, #364) - Bump dependencies to clear Go-1.20-compatible CVEs: golang-jwt, x/net, protobuf, go-jose v3.0.5 (CVE-2026-34986) (#360, #363) ## Test plan - [x] `go test ./... -count=1 -short` passes locally - [x] Multi-DBR tests in `universe/peco/correctness/go` passed (all 5 suites green against DBR 18.x-photon-scala2.13) - [ ] CI green This pull request was AI-assisted by Isaac. Signed-off-by: samikshya-chand_data <samikshya.chand@databricks.com>
….10.0 to 1.12.0 (#502) Bumps [github.com/databricks/databricks-sql-go](https://github.com/databricks/databricks-sql-go) from 1.10.0 to 1.12.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/databricks/databricks-sql-go/releases">github.com/databricks/databricks-sql-go's releases</a>.</em></p> <blockquote> <h2>v1.12.0</h2> <ul> <li><code>databricks/databricks-sql-go#355</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/361">#361</a>)</li> <li><code>databricks/databricks-sql-go#354</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/364">#364</a>)</li> <li><code>databricks/databricks-sql-go#360</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/363">#363</a>)</li> </ul> <h2>v1.11.1</h2> <ul> <li><code>databricks/databricks-sql-go#357</code></li> </ul> <h2>v1.11.0</h2> <ul> <li><code>databricks/databricks-sql-go#320</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/321">#321</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/322">#322</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/349">#349</a>)</li> <li>Add SPOG (Custom URL) routing support via <code>x-databricks-org-id</code><code>databricks/databricks-sql-go#347</code></li> <li><code>databricks/databricks-sql-go#341</code></li> <li><code>databricks/databricks-sql-go#326</code></li> <li><code>databricks/databricks-sql-go#351</code></li> <li><code>databricks/databricks-sql-go#325</code></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/databricks/databricks-sql-go/blob/main/CHANGELOG.md">github.com/databricks/databricks-sql-go's changelog</a>.</em></p> <blockquote> <h2>v1.12.0 (2026-05-25)</h2> <ul> <li><code>databricks/databricks-sql-go#355</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/361">#361</a>)</li> <li><code>databricks/databricks-sql-go#354</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/364">#364</a>)</li> <li><code>databricks/databricks-sql-go#360</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/363">#363</a>)</li> </ul> <h2>v1.11.1 (2026-05-20)</h2> <ul> <li><code>databricks/databricks-sql-go#357</code></li> </ul> <h2>v1.11.0 (2026-04-16)</h2> <ul> <li><code>databricks/databricks-sql-go#320</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/321">#321</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/322">#322</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/349">#349</a>)</li> <li>Add SPOG (Custom URL) routing support via <code>x-databricks-org-id</code><code>databricks/databricks-sql-go#347</code></li> <li><code>databricks/databricks-sql-go#341</code></li> <li><code>databricks/databricks-sql-go#326</code></li> <li><code>databricks/databricks-sql-go#351</code></li> <li><code>databricks/databricks-sql-go#325</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/databricks/databricks-sql-go/commit/c3be94a518f150367c56e063c9320069962667f3"><code>c3be94a</code></a> Prepare for v1.12.0 release (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/365">#365</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/7b961f22057c20926a95b9d50d1195f24f3ee7bc"><code>7b961f2</code></a> Telemetry: normalize host key for per-host client + breaker registries (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/364">#364</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/de57a476f80bb02f93fcbfe0db07e4b1fa478831"><code>de57a47</code></a> Telemetry: stop retrying into 429s, honour Retry-After, fix userAgent (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/354">#354</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/dc3c4f9f891eec92549012f702dd1892b71ad072"><code>dc3c4f9</code></a> [ES-1911239] Retry transient S3 errors on staging PUT/GET/REMOVE (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/361">#361</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/e248c0495747b8213deb3e1eb19d1233c7b822f7"><code>e248c04</code></a> Bump golang-jwt, x/net, protobuf to clear Go-1.20-compatible CVEs (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/363">#363</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/a97b104260857d9af2f0565cf0d6aa5f3d0b89c5"><code>a97b104</code></a> [ES-1892645] Retry transient S3 errors in CloudFetch downloads (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/355">#355</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/b31339e0aca915851f64b0936aee7f4252d69ad7"><code>b31339e</code></a> [SIRT-1753] Bump go-jose/go-jose/v3 to v3.0.5 (CVE-2026-34986) (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/360">#360</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/dd8a79f4c2717bb35bcee6f64b061a89659dc328"><code>dd8a79f</code></a> Prepare for v1.11.1 release (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/358">#358</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/2557e6fd17cb2b43c0e5420e003d3c5375eeaf1e"><code>2557e6f</code></a> Fix CloudFetch goroutine leak that retains Arrow buffers after Close (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/357">#357</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/f4d99924f71c94faffaa896ce8c3e427b303fb7b"><code>f4d9992</code></a> Prepare for v1.11.0 release (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/352">#352</a>)</li> <li>Additional commits viewable in <a href="https://github.com/databricks/databricks-sql-go/compare/v1.10.0...v1.12.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
#7199) Bumps the go-deps group with 29 updates in the / directory: | Package | From | To | | --- | --- | --- | | [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.42.0` | `1.42.1` | | [github.com/aws/aws-sdk-go-v2/service/eventbridge](https://github.com/aws/aws-sdk-go-v2) | `1.45.23` | `1.47.0` | | [github.com/aws/aws-sdk-go-v2/service/firehose](https://github.com/aws/aws-sdk-go-v2) | `1.42.13` | `1.45.0` | | [github.com/aws/aws-sdk-go-v2/service/glue](https://github.com/aws/aws-sdk-go-v2) | `1.139.1` | `1.148.0` | | [github.com/aws/aws-sdk-go-v2/service/kinesis](https://github.com/aws/aws-sdk-go-v2) | `1.43.5` | `1.45.0` | | [github.com/aws/aws-sdk-go-v2/service/lambda](https://github.com/aws/aws-sdk-go-v2) | `1.88.5` | `1.96.0` | | [github.com/aws/aws-sdk-go-v2/service/personalizeevents](https://github.com/aws/aws-sdk-go-v2) | `1.31.13` | `1.33.0` | | [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.103.3` | `1.105.0` | | [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.43.3` | `1.44.0` | | [github.com/confluentinc/confluent-kafka-go/v2](https://github.com/confluentinc/confluent-kafka-go) | `2.14.2` | `2.15.0` | | [github.com/databricks/databricks-sql-go](https://github.com/databricks/databricks-sql-go) | `1.10.0` | `1.13.1` | | [github.com/dgraph-io/badger/v4](https://github.com/dgraph-io/badger) | `4.9.1` | `4.9.4` | | [github.com/duckdb/duckdb-go/v2](https://github.com/duckdb/duckdb-go) | `2.10501.0` | `2.10504.0` | | [github.com/go-chi/chi/v5](https://github.com/go-chi/chi) | `5.3.0` | `5.3.1` | | [github.com/klauspost/compress](https://github.com/klauspost/compress) | `1.18.6` | `1.19.0` | | [github.com/microsoft/go-mssqldb](https://github.com/microsoft/go-mssqldb) | `1.9.8` | `1.10.0` | | [github.com/minio/minio-go/v7](https://github.com/minio/minio-go) | `7.2.0` | `7.2.1` | | [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) | `2.28.1` | `2.32.0` | | [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) | `9.18.0` | `9.21.0` | | [github.com/rudderlabs/keydb](https://github.com/rudderlabs/keydb) | `1.3.6` | `1.4.1` | | [github.com/rudderlabs/rudder-transformer/go](https://github.com/rudderlabs/rudder-transformer) | `1.129.1` | `1.141.4` | | [github.com/rudderlabs/sql-tunnels](https://github.com/rudderlabs/sql-tunnels) | `0.1.7` | `0.1.8` | | [github.com/rudderlabs/sqlconnect-go](https://github.com/rudderlabs/sqlconnect-go) | `1.25.2` | `1.28.0` | | [github.com/snowflakedb/gosnowflake](https://github.com/snowflakedb/gosnowflake) | `1.19.0` | `1.19.1` | | [go.etcd.io/etcd/api/v3](https://github.com/etcd-io/etcd) | `3.6.12` | `3.7.0` | | [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.6.12` | `3.7.0` | | [golang.org/x/net](https://github.com/golang/net) | `0.56.0` | `0.57.0` | | [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.32.3` | `0.36.2` | | [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.3` | `0.36.2` | Updates `github.com/aws/aws-sdk-go-v2` from 1.42.0 to 1.42.1 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/b4784c17b51e7f4dff48ac6016a09e21eeb683a8"><code>b4784c1</code></a> Release 2026-07-01</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/97c02011cd799bba5dfb0589a736a32cb064e80c"><code>97c0201</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/66872388a6564704668f302c3b87d9cd9ae5531f"><code>6687238</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/995297f1602ed868e23913487a14d7d1b92af6d6"><code>995297f</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/c26cfc66401e3ff465a9520f0f73f4e9474a338d"><code>c26cfc6</code></a> Fix bump smithy-go to cover multiple issues (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3461">#3461</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/fae66b855c063cbf7f41c44541e037bbb7b0a106"><code>fae66b8</code></a> Set transfer manager error as the first error seen, preventing race condition...</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/cf0eabd47c16a9733688171e157b288f843375d5"><code>cf0eabd</code></a> Release 2026-06-30</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/ad0c0913e69f26b12c23e55df3572e8e61aff5b1"><code>ad0c091</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/196e961fd8138d0918f57ce3549c1ae25fc5ce89"><code>196e961</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/1529ead9d1a40beee31b0ad347cf082a5eb039a6"><code>1529ead</code></a> Update API model</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/v1.42.0...v1.42.1">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/eventbridge` from 1.45.23 to 1.47.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/a88ff68b5524ce9e4f816c8c313267e6d321ce8c"><code>a88ff68</code></a> Release 2023-11-29</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/023df359dd66f7b3970ddf2874c69d4b78b99126"><code>023df35</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/41f99ac19a3c3fc2e7e177b8f2632d319bb590e4"><code>41f99ac</code></a> Update SDK's smithy-go dependency to v1.18.0</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/72478fb87eae54a9d5ea84b336daad6795aebe01"><code>72478fb</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/4c4b852716f661378136f0e4d7e966d180057e26"><code>4c4b852</code></a> feat: add Options() getter to service clients (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2398">#2398</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6b86039a2b6015432b243b342b532f2db7a9c709"><code>6b86039</code></a> Update golang.org/x/net dependency (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2391">#2391</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/0a955dd146a98d4b218893390a5c72512e0477c7"><code>0a955dd</code></a> Release 2023-11-28.3</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/94a398007cfac2c60a62c203faa363a4ecaa4abf"><code>94a3980</code></a> fix: correct wiring of disable s3express auth toggle (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2394">#2394</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/4aeeb0d7a4293f0b31c2e0be83e65da6f7fd4ae2"><code>4aeeb0d</code></a> Release 2023-11-28.2</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/e09e153704d4da6ae2bb0ae3875058950d31206b"><code>e09e153</code></a> Regenerated Clients</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/eventbridge/v1.45.23...service/s3/v1.47.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/firehose` from 1.42.13 to 1.45.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/13546abeb3c6bf9f0bfa97855fd8f52a2e26373e"><code>13546ab</code></a> Release 2023-11-27</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/59ce389800703c1509810f19ab77c467531ab07f"><code>59ce389</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/8257e839ab34958c84f1671ca89b92cf30360b43"><code>8257e83</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/8ef931c3c2a1f28e4bc68efe5a0582e3ec32f2ac"><code>8ef931c</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6afe5286d243f06aa040d3954b765b38366b88c2"><code>6afe528</code></a> Release 2023-11-22</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/769b1e08ea9acae6b2488864977a444dccb59e62"><code>769b1e0</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/b6c76999b24cbe735e03123800eaf7427ab6caf2"><code>b6c7699</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/57f3065c220672b63d1a1af0f424757048805904"><code>57f3065</code></a> breakfix: convert public access block config fields to nilable like s3 (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2385">#2385</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/fa3ee1a83b9edac9669159650622bcfe3003b44c"><code>fa3ee1a</code></a> Release 2023-11-21</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6e0c553b49b1fd84753d3ea440be93011d36cf40"><code>6e0c553</code></a> Regenerated Clients</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/sqs/v1.42.13...service/s3/v1.45.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/glue` from 1.139.1 to 1.148.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/4334b43c27eeb4c4ecfcba1a87cc08f963fe91a3"><code>4334b43</code></a> Release 2024-02-16</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/9e29187dc08c2e9bf8f66166841ca9c75e0624ab"><code>9e29187</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/f672c49fb7b4199becd3ba0a6e9d2b35f215e985"><code>f672c49</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/7f935782a0d8ee350736d4515cc05001e4ac3d01"><code>7f93578</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/da7bcdacddcf05ee9c897137fdbcdc8caf501698"><code>da7bcda</code></a> feat: add client config passthrough to waiter opts (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2499">#2499</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/1bb048272ad54b3cbeb3b6da99f4be8090bea5d2"><code>1bb0482</code></a> Release 2024-02-15</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/cc83a2b05532dfe5e6ccba25881887352134fbbd"><code>cc83a2b</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/7f44d9967b75499363425c29a5cf40375e9869a7"><code>7f44d99</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/4280ccb2671145220be23f299bc0db4a2c061ff5"><code>4280ccb</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/a264562983a722b90b7a08e5547de85274006e30"><code>a264562</code></a> fix awsjson error deserialization to not expect string code (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2489">#2489</a>)</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/glue/v1.139.1...service/ec2/v1.148.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/kinesis` from 1.43.5 to 1.45.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/13546abeb3c6bf9f0bfa97855fd8f52a2e26373e"><code>13546ab</code></a> Release 2023-11-27</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/59ce389800703c1509810f19ab77c467531ab07f"><code>59ce389</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/8257e839ab34958c84f1671ca89b92cf30360b43"><code>8257e83</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/8ef931c3c2a1f28e4bc68efe5a0582e3ec32f2ac"><code>8ef931c</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6afe5286d243f06aa040d3954b765b38366b88c2"><code>6afe528</code></a> Release 2023-11-22</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/769b1e08ea9acae6b2488864977a444dccb59e62"><code>769b1e0</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/b6c76999b24cbe735e03123800eaf7427ab6caf2"><code>b6c7699</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/57f3065c220672b63d1a1af0f424757048805904"><code>57f3065</code></a> breakfix: convert public access block config fields to nilable like s3 (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2385">#2385</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/fa3ee1a83b9edac9669159650622bcfe3003b44c"><code>fa3ee1a</code></a> Release 2023-11-21</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6e0c553b49b1fd84753d3ea440be93011d36cf40"><code>6e0c553</code></a> Regenerated Clients</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/sts/v1.43.5...service/s3/v1.45.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/lambda` from 1.88.5 to 1.96.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/bdb98c543b9f2ddcfde6670b97871fb144ec18e9"><code>bdb98c5</code></a> Release 2026-01-28</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/c878d57e69ca5f53552ba84d850857743b967c22"><code>c878d57</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/4f5d5034684faf53e349b53f8f67b1bcb47a2b95"><code>4f5d503</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/b7bf952165576a32eec513a5247ff571fac0a35b"><code>b7bf952</code></a> Feat release s3 transfer manager v2 (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3293">#3293</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/0baa1dcc4d6ea45d92a2292a6c51b3ea276d4359"><code>0baa1dc</code></a> Release 2026-01-27</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/11eae4b993c32b7640271465becb6dbae44230de"><code>11eae4b</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/297caa5614123ece8565d8ee5b4f3de091b79fbb"><code>297caa5</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/43d96e4ef276b89340b8323e139b676f8d00fea9"><code>43d96e4</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/de58dc6cdc4c35ac4687d53cff781a6027a0f52f"><code>de58dc6</code></a> Release 2026-01-26</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/dba39e60706bddbc976de20328b7c15df9fb6640"><code>dba39e6</code></a> Regenerated Clients</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.88.5...service/s3/v1.96.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/personalizeevents` from 1.31.13 to 1.33.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/8fac7d48b4707a8fdd9cb23b34b928fc83e38777"><code>8fac7d4</code></a> Release 2025-01-15</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/9eff8acbf1cc8bb294171b969a8e2803bf235a07"><code>9eff8ac</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/f47aa72637a4492512213811a314dda0b9c9a189"><code>f47aa72</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/5934dd36b8ecbc42a321216e8da721e1258ae8a8"><code>5934dd3</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6636822440828c3eebaacfe9a182c9eb47895236"><code>6636822</code></a> feat: flexible checksum updates (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2808">#2808</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/4ffbb7cbe6bfeebb50a773d45df57d3fd126cafb"><code>4ffbb7c</code></a> Release 2025-01-14</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/2f70ff490c3474a59ca29dc2661ec5e4f13ec2f7"><code>2f70ff4</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/434159f5c088eb7b484fea9179d6c5e6302e4610"><code>434159f</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/a80fac9aee1efaac1d16f4005ccc93fed22c62c3"><code>a80fac9</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/44e779abca3ec6dfdc9415ced6af0aa684149bd1"><code>44e779a</code></a> fix several waiter issues (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2953">#2953</a>)</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.13...v1.33.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.103.3 to 1.105.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/fc087ca9c93f355ac25ad7d78cd1f60170424e0c"><code>fc087ca</code></a> Release 2026-07-06</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/a0dc66ef2b9f031cb3edefc4c9b20635294537ea"><code>a0dc66e</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/0e93979277a5678f5a47b407745d3b20b2300083"><code>0e93979</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/1e51eb5e75f504acee800c09b21f5b271d62c728"><code>1e51eb5</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/a4cd1c9dcbc1492cd27b72f2a21682d43dab7f40"><code>a4cd1c9</code></a> add serialization snapshot tests (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3463">#3463</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/8d5a855c81f3a632fcac37fbc67d65e114902efc"><code>8d5a855</code></a> set rollout strategy 2 (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/3467">#3467</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/bdb96810ded2e8f93c329e2b3380543254b984a1"><code>bdb9681</code></a> Release 2026-07-02</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/dad37d5b8a86c70b41ba6eb26114db1b0566218a"><code>dad37d5</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/019a359cb7d5af2e9a8cffdaf5139797d4d382db"><code>019a359</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/c51ba98fbf1df116d7a9a3770a08788d11f6c480"><code>c51ba98</code></a> Update API model</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.103.3...service/s3/v1.105.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.43.3 to 1.44.0 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/fa3ee1a83b9edac9669159650622bcfe3003b44c"><code>fa3ee1a</code></a> Release 2023-11-21</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/6e0c553b49b1fd84753d3ea440be93011d36cf40"><code>6e0c553</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/32fa00b32e99f9004aadc5750d508a9393d03d57"><code>32fa00b</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/72eae5c284e11b1f167fe17282ae1ee821a11659"><code>72eae5c</code></a> Update API model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/1c69d08daccf94d9114d2463adc02e59e85b4deb"><code>1c69d08</code></a> fix: don't expect response to be json in endpointcreds provider (<a href="https://redirect.github.com/aws/aws-sdk-go-v2/issues/2381">#2381</a>)</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/3bd97c063d962a34ca496720a3ce00ef4affe5fd"><code>3bd97c0</code></a> fix: don't send 0 max items for object version and multipart upload paginator...</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/b3e07aa0a0dd26ec46095c28ce65301da2e78dba"><code>b3e07aa</code></a> Release 2023-11-20</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/2fc1c0dab14dff82fc2c2465cb7c40a4157196a0"><code>2fc1c0d</code></a> Regenerated Clients</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/1a6bd026243230178e775059d27038c0ced194ea"><code>1a6bd02</code></a> Update endpoints model</li> <li><a href="https://github.com/aws/aws-sdk-go-v2/commit/ac2c871bff4a9fbb6284f1dcc061fdcabea346f3"><code>ac2c871</code></a> Update API model</li> <li>Additional commits viewable in <a href="https://github.com/aws/aws-sdk-go-v2/compare/service/amp/v1.43.3...service/s3/v1.44.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/aws/smithy-go` from 1.27.2 to 1.27.3 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aws/smithy-go/blob/main/CHANGELOG.md">github.com/aws/smithy-go's changelog</a>.</em></p> <blockquote> <h1>Release (2026-07-16)</h1> <h2>General Highlights</h2> <ul> <li><strong>Dependency Update</strong>: Updated to the latest SDK module versions</li> </ul> <h2>Module Highlights</h2> <ul> <li><code>github.com/aws/smithy-go/aws-http-auth</code>: <a href="https://github.com/aws/smithy-go/blob/main/aws-http-auth/CHANGELOG.md#v121-2026-07-16">v1.2.1</a> <ul> <li><strong>Bug Fix</strong>: Use r.URL.Host when r.Host is unset.</li> </ul> </li> <li><code>github.com/aws/smithy-go/aws-http-auth-schemes</code>: <a href="https://github.com/aws/smithy-go/blob/main/aws-http-auth-schemes/CHANGELOG.md#v100-2026-07-16">v1.0.0</a> <ul> <li><strong>Release</strong>: Module <code>github.com/aws/smithy-go/aws-http-auth-schemes</code> adds generic smithy-go client support for AWS Sigv4 and Sigv4a.</li> </ul> </li> </ul> <h1>Release (2026-06-26)</h1> <h2>General Highlights</h2> <ul> <li><strong>Dependency Update</strong>: Updated to the latest SDK module versions</li> </ul> <h2>Module Highlights</h2> <ul> <li><code>github.com/aws/smithy-go</code>: v1.27.3 <ul> <li><strong>Bug Fix</strong>: Fix bug in JSON doc encoder and endpoint host label format validation</li> </ul> </li> </ul> <h1>Release (2026-06-05)</h1> <h2>General Highlights</h2> <ul> <li><strong>Dependency Update</strong>: Updated to the latest SDK module versions</li> </ul> <h2>Module Highlights</h2> <ul> <li><code>github.com/aws/smithy-go</code>: v1.27.2 <ul> <li><strong>Bug Fix</strong>: Fix incorrect serialization of unions in CBOR-based protocols.</li> </ul> </li> </ul> <h1>Release (2026-06-04)</h1> <h2>General Highlights</h2> <ul> <li><strong>Dependency Update</strong>: Updated to the latest SDK module versions</li> </ul> <h2>Module Highlights</h2> <ul> <li><code>github.com/aws/smithy-go</code>: v1.27.1 <ul> <li><strong>Bug Fix</strong>: Fixed a deserialization failure in all protocols when encountering a union with explicit null members.</li> <li><strong>Bug Fix</strong>: Fixed a panic when deserializing nested unions in JSON- and CBOR-based protocols.</li> </ul> </li> </ul> <h1>Release (2026-06-02)</h1> <h2>General Highlights</h2> <ul> <li><strong>Dependency Update</strong>: Updated to the latest SDK module versions</li> </ul> <h2>Module Highlights</h2> <ul> <li><code>github.com/aws/smithy-go</code>: v1.27.0 <ul> <li><strong>Feature</strong>: Add APIs for schema-based serialization.</li> <li><strong>Feature</strong>: Add support for all current AWS and Smithy protocols.</li> <li><strong>Bug Fix</strong>: Enforce max nesting depth of 128 on CBOR payloads.</li> </ul> </li> <li><code>github.com/aws/smithy-go/aws-http-auth</code>: <a href="https://github.com/aws/smithy-go/blob/main/aws-http-auth/CHANGELOG.md#v120-2026-06-02">v1.2.0</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aws/smithy-go/commit/94459270154bbf890f0e45c69bab7d401dc41170"><code>9445927</code></a> Release 2026-06-26</li> <li><a href="https://github.com/aws/smithy-go/commit/7617c7e6f0d4c60a55b9c3f7a00b873a59adeccd"><code>7617c7e</code></a> add prefix/suffix hyphen rejection for host label validation based on rfc1123...</li> <li><a href="https://github.com/aws/smithy-go/commit/49402bd82efd9fe0a3aeda12cd3a65ebb48db512"><code>49402bd</code></a> Fix document.Number serialization and BigDecimal negative zero sign loss (<a href="https://redirect.github.com/aws/smithy-go/issues/681">#681</a>)</li> <li><a href="https://github.com/aws/smithy-go/commit/648e8addf67de86a094a7d2bc1ff7305ab4fdfe5"><code>648e8ad</code></a> feat: move common middlewares to shared addCommonMiddlewares (<a href="https://redirect.github.com/aws/smithy-go/issues/674">#674</a>)</li> <li>See full diff in <a href="https://github.com/aws/smithy-go/compare/v1.27.2...v1.27.3">compare view</a></li> </ul> </details> <br /> Updates `github.com/confluentinc/confluent-kafka-go/v2` from 2.14.2 to 2.15.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/confluentinc/confluent-kafka-go/releases">github.com/confluentinc/confluent-kafka-go/v2's releases</a>.</em></p> <blockquote> <h2>v2.15.0</h2> <p>This is a feature release:</p> <h3>Enhancements</h3> <ul> <li>Add support for <code>ResourceTransactionalID</code> in AdminClient ACL APIs (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1407">#1407</a>)</li> <li>Add support for union-of-pools/auto pool mapping for Schema Registry (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1519">#1519</a>)</li> </ul> <h3>Fixes</h3> <ul> <li>Handle non-HTTP errors during retries (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1563">#1563</a>)</li> <li><code>ErrMsgTimedOut</code> is now counted as a timeout error (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1422">#1422</a>, <a href="https://github.com/marcoferrer"><code>@marcoferrer</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/confluentinc/confluent-kafka-go/blob/master/CHANGELOG.md">github.com/confluentinc/confluent-kafka-go/v2's changelog</a>.</em></p> <blockquote> <h2>v2.15.0</h2> <p>This is a feature release:</p> <h3>Enhancements</h3> <ul> <li>Add support for <code>ResourceTransactionalID</code> in AdminClient ACL APIs (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1407">#1407</a>)</li> <li>Add support for union-of-pools/auto pool mapping for Schema Registry (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1519">#1519</a>)</li> </ul> <h3>Fixes</h3> <ul> <li>Handle non-HTTP errors during retries (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1563">#1563</a>)</li> <li><code>ErrMsgTimedOut</code> is now counted as a timeout error (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1422">#1422</a>, <a href="https://github.com/marcoferrer"><code>@marcoferrer</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/f2d38edb98cc93f204a668d29c19a2db091d8ea3"><code>f2d38ed</code></a> Import v2.15.0 (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1571">#1571</a>)</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/6d012ae602c7e8a6e91bbdeb77ed86c84cc5d25c"><code>6d012ae</code></a> Documentation and error code update for librdkafka v2.15.0</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/d28ceb5ed9fafc42250131f4ed26a60e98ab48ab"><code>d28ceb5</code></a> librdkafka static bundle v2.15.0</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/2786aff2b683b6d6c7ab0ba05a471c0f60ecb59d"><code>2786aff</code></a> version change</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/be59cd6d3506835e22ef29d6d100f09d7dbd8914"><code>be59cd6</code></a> Update changelog (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1570">#1570</a>)</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/d063980b2d851fb1c505faee18b799af3db7af44"><code>d063980</code></a> Import v2.15.0 rc2 (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1568">#1568</a>)</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/8cee147cb846f060740730580c573dfeb99e53c8"><code>8cee147</code></a> Documentation and error code update for librdkafka v2.15.0-RC2</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/73afdedf34ee1f11406cd099dada1ce8ca208248"><code>73afded</code></a> librdkafka static bundle v2.15.0-RC2</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/fb2567e40b232a71c28967b479690e7e8aed98f1"><code>fb2567e</code></a> Change version</li> <li><a href="https://github.com/confluentinc/confluent-kafka-go/commit/7e3cad9d32a42655b22ba4a4e59334cdfb5f35a2"><code>7e3cad9</code></a> Add changelog entry for <a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1422">#1422</a> (<a href="https://redirect.github.com/confluentinc/confluent-kafka-go/issues/1566">#1566</a>)</li> <li>Additional commits viewable in <a href="https://github.com/confluentinc/confluent-kafka-go/compare/v2.14.2...v2.15.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/databricks/databricks-sql-go` from 1.10.0 to 1.13.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/databricks/databricks-sql-go/releases">github.com/databricks/databricks-sql-go's releases</a>.</em></p> <blockquote> <h2>v1.13.1</h2> <ul> <li>Expose native Arrow decimal handling: add the <code>WithArrowNativeDecimal</code> connector option and the <code>useArrowNativeDecimal</code> DSN parameter so DECIMAL columns can be returned as native Arrow <code>decimal128</code> (via <code>GetArrowBatches</code>) instead of strings. When scanned through <code>database/sql</code><code>databricks/databricks-sql-go#274</code></li> </ul> <h2>v1.13.0</h2> <ul> <li><code>databricks/databricks-sql-go#367</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/374">#374</a>)</li> <li><code>databricks/databricks-sql-go#372</code></li> <li>Detach result streaming from <code>QueryContext</code><code>databricks/databricks-sql-go#373</code></li> </ul> <h2>v1.12.0</h2> <ul> <li><code>databricks/databricks-sql-go#355</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/361">#361</a>)</li> <li><code>databricks/databricks-sql-go#354</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/364">#364</a>)</li> <li><code>databricks/databricks-sql-go#360</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/363">#363</a>)</li> </ul> <h2>v1.11.1</h2> <ul> <li><code>databricks/databricks-sql-go#357</code></li> </ul> <h2>v1.11.0</h2> <ul> <li><code>databricks/databricks-sql-go#320</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/321">#321</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/322">#322</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/349">#349</a>)</li> <li>Add SPOG (Custom URL) routing support via <code>x-databricks-org-id</code><code>databricks/databricks-sql-go#347</code></li> <li><code>databricks/databricks-sql-go#341</code></li> <li><code>databricks/databricks-sql-go#326</code></li> <li><code>databricks/databricks-sql-go#351</code></li> <li><code>databricks/databricks-sql-go#325</code></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/databricks/databricks-sql-go/blob/main/CHANGELOG.md">github.com/databricks/databricks-sql-go's changelog</a>.</em></p> <blockquote> <h2>v1.13.1 (2026-07-07)</h2> <ul> <li>Expose native Arrow decimal handling: add the <code>WithArrowNativeDecimal</code> connector option and the <code>useArrowNativeDecimal</code> DSN parameter so DECIMAL columns can be returned as native Arrow <code>decimal128</code> (via <code>GetArrowBatches</code>) instead of strings. When scanned through <code>database/sql</code><code>databricks/databricks-sql-go#274</code></li> </ul> <h2>v1.13.0 (2026-06-04)</h2> <ul> <li><code>databricks/databricks-sql-go#367</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/374">#374</a>)</li> <li><code>databricks/databricks-sql-go#372</code></li> <li>Detach result streaming from <code>QueryContext</code><code>databricks/databricks-sql-go#373</code></li> </ul> <h2>v1.12.0 (2026-05-25)</h2> <ul> <li><code>databricks/databricks-sql-go#355</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/361">#361</a>)</li> <li><code>databricks/databricks-sql-go#354</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/364">#364</a>)</li> <li><code>databricks/databricks-sql-go#360</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/363">#363</a>)</li> </ul> <h2>v1.11.1 (2026-05-20)</h2> <ul> <li><code>databricks/databricks-sql-go#357</code></li> </ul> <h2>v1.11.0 (2026-04-16)</h2> <ul> <li><code>databricks/databricks-sql-go#320</code><a href="https://redirect.github.com/databricks/databricks-sql-go/issues/321">#321</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/322">#322</a>, <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/349">#349</a>)</li> <li>Add SPOG (Custom URL) routing support via <code>x-databricks-org-id</code><code>databricks/databricks-sql-go#347</code></li> <li><code>databricks/databricks-sql-go#341</code></li> <li><code>databricks/databricks-sql-go#326</code></li> <li><code>databricks/databricks-sql-go#351</code></li> <li><code>databricks/databricks-sql-go#325</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/databricks/databricks-sql-go/commit/ebb02d16ccc2fd2acc5b42e830e3ae135f7e2beb"><code>ebb02d1</code></a> Prepare for v1.13.1 release (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/385">#385</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/732b92aa981df3c38d43242344363b3316965cfd"><code>732b92a</code></a> ci: restore pull-requests: write for the PR-comment steps in trigger-integrat...</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/4a057361fad5965fc5ee9a405c71778c77daa91d"><code>4a05736</code></a> Expose native Arrow decimal handling (fixes <a href="https://redirect.github.com/databricks/databricks-sql-go/issues/274">#274</a>) (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/383">#383</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/b5e5f01d7b7a0488faf75bc28f1b03f77b822368"><code>b5e5f01</code></a> ci: trigger Go integration tests in databricks-driver-test (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/381">#381</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/a8c291d00ebb1745906e11f81b7010e4db92efd3"><code>a8c291d</code></a> Prepare for v1.13.0 release (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/376">#376</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/9261ac64a1ae5c3a9ff614282c6cf7331940a32d"><code>9261ac6</code></a> Extract SPOG org-id from cluster httpPath for non-Thrift requests (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/367">#367</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/9d711e799dfe9db3bb1075eb3f2b5400d8ed800e"><code>9d711e7</code></a> Fix U2M/M2M OAuth for SPOG (unified) AWS hosts (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/374">#374</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/47829480ca775b0e16c43969414fdf908c0a7894"><code>4782948</code></a> Cap CloudFetch Arrow batches to server-declared RowCount (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/372">#372</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/425c7005c7499709b157cd45e75b6e8909cb6bdd"><code>425c700</code></a> [ES-1934053] Detach result streaming from QueryContext cancellation (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/373">#373</a>)</li> <li><a href="https://github.com/databricks/databricks-sql-go/commit/94154ac1d325b4565e3e91f628868ce3630e8b0f"><code>94154ac</code></a> Fix flaky TestConn_ExecContext: don't cancel a finished operation (<a href="https://redirect.github.com/databricks/databricks-sql-go/issues/369">#369</a>)</li> <li>Additional commits viewable in <a href="https://github.com/databricks/databricks-sql-go/compare/v1.10.0...v1.13.1">compare view</a></li> </ul> </details> <br /> Updates `github.com/dgraph-io/badger/v4` from 4.9.1 to 4.9.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dgraph-io/badger/releases">github.com/dgraph-io/badger/v4's releases</a>.</em></p> <blockquote> <h2>v4.9.4</h2> <h2>What's Changed</h2> <ul> <li>fix(db): don't drop acknowledged writes during DropPrefix/DropAll by <a href="https://github.com/matthewmcneely"><code>@matthewmcneely</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2313">dgraph-io/badger#2313</a></li> <li>fix: fix an issue where the compactor causes previously deleted data to reappear by <a href="https://github.com/yangchun0821"><code>@yangchun0821</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2278">dgraph-io/badger#2278</a></li> <li>docs(changelog): backfill 4.9.2, add 4.9.3, fix 4.9.0 compare link by <a href="https://github.com/matthewmcneely"><code>@matthewmcneely</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2311">dgraph-io/badger#2311</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/yangchun0821"><code>@yangchun0821</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2278">dgraph-io/badger#2278</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/dgraph-io/badger/compare/v4.9.3...v4.9.4">https://github.com/dgraph-io/badger/compare/v4.9.3...v4.9.4</a></p> <h2>v4.9.3</h2> <h2>What's Changed</h2> <ul> <li>perf(db): signal-based L0 write backpressure (replace busy-sleeps) by <a href="https://github.com/shaunpatterson"><code>@shaunpatterson</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2308">dgraph-io/badger#2308</a></li> <li>fix(vlog): prevent deleted key from reappearing after value-log GC by <a href="https://github.com/shiva-istari"><code>@shiva-istari</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2310">dgraph-io/badger#2310</a></li> <li>docs: update CONTRIBUTING (TOC, code style, license header, master→main) by <a href="https://github.com/matthewmcneely"><code>@matthewmcneely</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2300">dgraph-io/badger#2300</a></li> <li>chore(ci): add stale Action by <a href="https://github.com/shiva-istari"><code>@shiva-istari</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2302">dgraph-io/badger#2302</a></li> <li>ci: keep required checks green on docs-only PRs by <a href="https://github.com/matthewmcneely"><code>@matthewmcneely</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2301">dgraph-io/badger#2301</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/shaunpatterson"><code>@shaunpatterson</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2308">dgraph-io/badger#2308</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/dgraph-io/badger/compare/v4.9.2...v4.9.3">https://github.com/dgraph-io/badger/compare/v4.9.2...v4.9.3</a></p> <h2>v4.9.2</h2> <h2>What's Changed</h2> <ul> <li>chore(core): remove unused event log by <a href="https://github.com/xqqp"><code>@xqqp</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2257">dgraph-io/badger#2257</a></li> <li>fix(cd): upload build artifacts to GitHub Release by <a href="https://github.com/matthewmcneely"><code>@matthewmcneely</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2273">dgraph-io/badger#2273</a></li> <li>fix: Prevent NPE on sync with inmemory DB by <a href="https://github.com/alpe"><code>@alpe</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2264">dgraph-io/badger#2264</a></li> <li>perf: skip lsm lookup for expired entries during value log rewrite by <a href="https://github.com/lamb007"><code>@lamb007</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2269">dgraph-io/badger#2269</a></li> <li>chore: update jemalloc to 5.3.1 by <a href="https://github.com/solracsf"><code>@solracsf</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2275">dgraph-io/badger#2275</a></li> <li>fix : read only user should be able to open db on ReadOnly mode by <a href="https://github.com/Naelpuissant"><code>@Naelpuissant</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2268">dgraph-io/badger#2268</a></li> <li>fix(compaction): clamp baseLevel to >=1 to prevent L0->L0 panic on la… by <a href="https://github.com/shiva-istari"><code>@shiva-istari</code></a> in <a href="https://redirect.github.com/dgraph-io/badger/pull/2296">dgraph-io/badger#2296</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/xqqp"><code>@xqqp</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2257">dgraph-io/badger#2257</a></li> <li><a href="https://github.com/alpe"><code>@alpe</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2264">dgraph-io/badger#2264</a></li> <li><a href="https://github.com/lamb007"><code>@lamb007</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2269">dgraph-io/badger#2269</a></li> <li><a href="https://github.com/Naelpuissant"><code>@Naelpuissant</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2268">dgraph-io/badger#2268</a></li> <li><a href="https://github.com/shiva-istari"><code>@shiva-istari</code></a> made their first contribution in <a href="https://redirect.github.com/dgraph-io/badger/pull/2296">dgraph-io/badger#2296</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/dgraph-io/badger/compare/v4.9.1...v4.9.2">https://github.com/dgraph-io/badger/compare/v4.9.1...v4.9.2</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/dgraph-io/badger/blob/main/CHANGELOG.md">github.com/dgraph-io/badger/v4's changelog</a>.</em></p> <blockquote> <h2>[4.9.4] - 2026-07-08</h2> <p><strong>Fixed</strong></p> <ul> <li>fix(db): don't drop acknowledged writes during DropPrefix/DropAll (<a href="https://redirect.github.com/dgraph-io/badger/issues/2313">#2313</a>)</li> <li>fix: fix an issue where the compactor causes previously deleted data to reappear (<a href="https://redirect.github.com/dgraph-io/badger/issues/2278">#2278</a>)</li> </ul> <p><strong>Docs</strong></p> <ul> <li>docs(changelog): backfill 4.9.2, add 4.9.3, fix 4.9.0 compare link (<a href="https://redirect.github.com/dgraph-io/badger/issues/2311">#2311</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/dgraph-io/badger/compare/v4.9.3...v4.9.4">https://github.com/dgraph-io/badger/compare/v4.9.3...v4.9.4</a></p> <h2>[4.9.3] - 2026-07-06</h2> <p><strong>Performance</strong></p> <ul> <li>perf(db): signal-based L0 write backpressure (replace busy-sleeps) (<a href="https://redirect.github.com/dgraph-io/badger/issues/2308">#2308</a>)</li> </ul> <p><strong>Fixed</strong></p> <ul> <li>fix(vlog): prevent deleted key from reappearing after value-log GC (<a href="https://redirect.github.com/dgraph-io/badger/issues/2310">#2310</a>)</li> </ul> <p><strong>Docs</strong></p> <ul> <li>docs: update CONTRIBUTING (TOC, code style, license header, master→main) (<a href="https://redirect.github.com/dgraph-io/badger/issues/2300">#2300</a>)</li> </ul> <p><strong>CI</strong></p> <ul> <li>chore(ci): add stale Action (<a href="https://redirect.github.com/dgraph-io/badger/issues/2302">#2302</a>)</li> <li>ci: keep required checks green on docs-only PRs (<a href="https://redirect.github.com/dgraph-io/badger/issues/2301">#2301</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/dgraph-io/badger/compare/v4.9.2...v4.9.3">https://github.com/dgraph-io/badger/compare/v4.9.2...v4.9.3</a></p> <h2>[4.9.2] - 2026-06-09</h2> <p><strong>Fixed</strong></p> <ul> <li>fix: Prevent NPE on sync with inmemory DB (<a href="https://redirect.github.com/dgraph-io/badger/issues/2264">#2264</a>)</li> <li>fix: read only user should be able to open db on ReadOnly mode (<a href="https://redirect.github.com/dgraph-io/badger/issues/2268">#2268</a>)</li> <li>fix(compaction): clamp baseLevel to >=1 to prevent L0->L0 panic on large LSM trees (<a href="https://redirect.github.com/dgraph-io/badger/issues/2296">#2296</a>)</li> </ul> <p><strong>Performance</strong></p> <ul> <li>perf: skip lsm lookup for expired entries during value log rewrite (<a href="https://redirect.github.com/dgraph-io/badger/issues/2269">#2269</a>)</li> </ul> <p><strong>CI</strong></p> <ul> <li>fix(cd): upload build artifacts to GitHub Release (<a href="https://redirect.github.com/dgraph-io/badger/issues/2273">#2273</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dgraph-io/badger/commit/9b0ef414d997bdd2f28e0da95e6d07dcb1e4b105"><code>9b0ef41</code></a> chore: prepare for release v4.9.4 (<a href="https://redirect.github.com/dgraph-io/badger/issues/2314">#2314</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/bcef113934c156e78cdb7809a7a3e27e70e54e63"><code>bcef113</code></a> fix: fix an issue where the compactor causes previously deleted data to reapp...</li> <li><a href="https://github.com/dgraph-io/badger/commit/7df4b2f2cf18ee39c0f56bd99963defc253d2b60"><code>7df4b2f</code></a> fix(db): don't drop acknowledged writes during DropPrefix/DropAll (<a href="https://redirect.github.com/dgraph-io/badger/issues/2313">#2313</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/45d5bd15f0439be19d9f8c9804a677f60b22b25b"><code>45d5bd1</code></a> docs(changelog): backfill 4.9.2, add 4.9.3, fix 4.9.0 compare link (<a href="https://redirect.github.com/dgraph-io/badger/issues/2311">#2311</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/c3489dc34bf9ca5da0258f0310ce4367a37c1208"><code>c3489dc</code></a> perf(db): signal-based L0 write backpressure (replace busy-sleeps) (<a href="https://redirect.github.com/dgraph-io/badger/issues/2308">#2308</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/34dba21bea3683c83684bb9f40d3495976e2828a"><code>34dba21</code></a> fix(vlog): prevent deleted key from reappearing after value-log GC (<a href="https://redirect.github.com/dgraph-io/badger/issues/2310">#2310</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/5e2d536b0e452a8d396cc255d2984e06865e86c9"><code>5e2d536</code></a> chore (ci): add stale Action (<a href="https://redirect.github.com/dgraph-io/badger/issues/2302">#2302</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/5df4188b34b020e54d7247653fc6c0049f05e814"><code>5df4188</code></a> docs: update CONTRIBUTING (TOC, code style, license header, master→main) (<a href="https://redirect.github.com/dgraph-io/badger/issues/2300">#2300</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/d0c62dd513da989faa99f2a70635f0c1e9f80b0f"><code>d0c62dd</code></a> ci: keep required checks green on docs-only PRs (<a href="https://redirect.github.com/dgraph-io/badger/issues/2301">#2301</a>)</li> <li><a href="https://github.com/dgraph-io/badger/commit/284cea00ccee8618d23f5e60246c4a40fd5e4bb1"><code>284cea0</code></a> fix(compaction): clamp baseLevel to >=1 to prevent L0->L0 panic on la… (<a href="https://redirect.github.com/dgraph-io/badger/issues/2296">#2296</a>)</li> <li>Additional commits viewable in <a href="https://github.com/dgraph-io/badger/compare/v4.9.1...v4.9.4">compare view</a></li> </ul> </details> <br /> Updates `github.com/duckdb/duckdb-go/v2` from 2.10501.0 to 2.10504.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/duckdb/duckdb-go/releases">github.com/duckdb/duckdb-go/v2's releases</a>.</em></p> <blockquote> <h2>v2.10504.0</h2> <h2>What's Changed</h2> <ul> <li>Fix checkptr misalignment in getBytes for non-inlined strings by <a href="https://github.com/krleonid"><code>@krleonid</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/148">duckdb/duckdb-go#148</a></li> <li>Add JSON marshal/unmarshal for OrderedMap by <a href="https://github.com/krleonid"><code>@krleonid</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/147">duckdb/duckdb-go#147</a></li> <li>Fix O(N²) bind parameter lookup with O(N) map pre-build by <a href="https://github.com/krleonid"><code>@krleonid</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/144">duckdb/duckdb-go#144</a></li> <li>Support named args in the Arrow interface by <a href="https://github.com/lscheibel"><code>@lscheibel</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/143">duckdb/duckdb-go#143</a></li> <li>Add CI race tests by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/150">duckdb/duckdb-go#150</a></li> <li>Fix connector and appender cleanup edge cases by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/149">duckdb/duckdb-go#149</a></li> <li>Bump to v1.5.4 by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/151">duckdb/duckdb-go#151</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/lscheibel"><code>@lscheibel</code></a> made their first contribution in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/143">duckdb/duckdb-go#143</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/duckdb/duckdb-go/compare/v2.10503.1...v2.10504.0">https://github.com/duckdb/duckdb-go/compare/v2.10503.1...v2.10504.0</a></p> <h2>v2.10503.1</h2> <h2>What's Changed</h2> <ul> <li>Eliminate CGO overhead in row scanning hot path by <a href="https://github.com/krleonid"><code>@krleonid</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/141">duckdb/duckdb-go#141</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/duckdb/duckdb-go/compare/v2.10503.0...v2.10503.1">https://github.com/duckdb/duckdb-go/compare/v2.10503.0...v2.10503.1</a></p> <h2>v2.10503.0</h2> <h2>What's Changed</h2> <ul> <li>Add BIT support by <a href="https://github.com/JelteF"><code>@JelteF</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/117">duckdb/duckdb-go#117</a></li> <li>feat: add geometry type support by <a href="https://github.com/niger-prequel"><code>@niger-prequel</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/132">duckdb/duckdb-go#132</a></li> <li>perf: eliminate per-cell CGO calls in getEnum via pre-built reverse dictionary by <a href="https://github.com/hellower"><code>@hellower</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/122">duckdb/duckdb-go#122</a></li> <li>Explain local static linking workflow by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/135">duckdb/duckdb-go#135</a></li> <li>Preserve NUL bytes in created VARCHAR values by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/136">duckdb/duckdb-go#136</a></li> <li>Add Typed for explicit scalar parameter binding by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/137">duckdb/duckdb-go#137</a></li> <li>Bump to v1.5.3 by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/139">duckdb/duckdb-go#139</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/niger-prequel"><code>@niger-prequel</code></a> made their first contribution in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/132">duckdb/duckdb-go#132</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/duckdb/duckdb-go/compare/v2.10502.0...v2.10503.0">https://github.com/duckdb/duckdb-go/compare/v2.10502.0...v2.10503.0</a></p> <h2>v2.10502.0</h2> <h2>What's Changed</h2> <ul> <li>Bump to v1.5.2 by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go/pull/131">duckdb/duckdb-go#131</a></li> <li>Bindings <ul> <li>Fix memleak for error by <a href="https://github.com/dentiny"><code>@dentiny</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go-bindings/pull/77">duckdb/duckdb-go-bindings#77</a></li> <li>Fix alloc count by <a href="https://github.com/dentiny"><code>@dentiny</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go-bindings/pull/76">duckdb/duckdb-go-bindings#76</a></li> <li>Fix non-idempotent destroy result by <a href="https://github.com/dentiny"><code>@dentiny</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go-bindings/pull/78">duckdb/duckdb-go-bindings#78</a></li> <li>Expose UTF8 verify and unsafe string assign by <a href="https://github.com/taniabogatsch"><code>@taniabogatsch</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go-bindings/pull/79">duckdb/duckdb-go-bindings#79</a></li> <li>Update DuckDB to v1.5.2 by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go-bindings/pull/80">duckdb/duckdb-go-bindings#80</a></li> <li>Update libs to v0.10502.0 by <a href="https://github.com/mlafeldt"><code>@mlafeldt</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-go-bindings/pull/81">duckdb/duckdb-go-bindings#81</a></li> </ul> </li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/duckdb/duckdb-go/compare/v2.10501.0...v2.10502.0">https://github.com/duckdb/duckdb-go/compare/v2.10501.0...v2.10502.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/duckdb/duckdb-go/commit/1b05bbfc0e08b99c2a384d660ce149ae6aad93e8"><code>1b05bbf</code></a> Merge pull request <a href="https://redirect.github.com/duckdb/duckdb-go/issues/151">#151</a> from mlafeldt/duckdb-154</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/a205902a62a0f884981dcda54d13357d00043685"><code>a205902</code></a> Document Andium LTS branch</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/281e3d7f0f4d5d0689bcec8e693913c018cc5077"><code>281e3d7</code></a> Bump to v1.5.4</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/211bf22e92744d0a674c81c4ebedba77992a8649"><code>211bf22</code></a> Merge pull request <a href="https://redirect.github.com/duckdb/duckdb-go/issues/149">#149</a> from mlafeldt/fix-appender-connector-cleanup</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/60bc53525a13a5cacf0baa6a80ab73f8dc924f17"><code>60bc535</code></a> Merge pull request <a href="https://redirect.github.com/duckdb/duckdb-go/issues/150">#150</a> from mlafeldt/ci-race-tests</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/940ef54e374be63542d1b4a1b66504d99e01604b"><code>940ef54</code></a> Add CI race tests</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/97714454c3063580080e28fb8123bf5b9059f3d8"><code>9771445</code></a> Fix appender close failure cleanup</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/d98a2d46f2856624f6fe863b4a7a8fbf25913210"><code>d98a2d4</code></a> Use patchVar helper in context tests</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/387cc3a151d551f4062bc30e7b8d5ddd775764b6"><code>387cc3a</code></a> Fix connector init cleanup</li> <li><a href="https://github.com/duckdb/duckdb-go/commit/417a3dfddf3413e77c34977217c4e0cca8dd01e4"><code>417a3df</code></a> Merge pull request <a href="https://redirect.github.com/duckdb/duckdb-go/issues/143">#143</a> from lscheibel/arrow-named-args</li> <li>Additional commits viewable in <a href="https://github.com/duckdb/duckdb-go/compare/v2.10501.0...v2.10504.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/go-chi/chi/v5` from 5.3.0 to 5.3.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/go-chi/chi/releases">github.com/go-chi/chi/v5's releases</a>.</em></p> <blockquote> <h2>v5.3.1</h2> <h2>What's Changed</h2> <ul> <li>Honor Discard() in httpFancyWriter.ReadFrom by <a href="https://github.com/DucMinhNe"><code>@DucMinhNe</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1110">go-chi/chi#1110</a></li> <li>Tidy build directives by <a href="https://github.com/JRaspass"><code>@JRaspass</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1113">go-chi/chi#1113</a></li> <li>feat(middleware): add text/xml and application/xml to default compressible types by <a href="https://github.com/VojtechVitek"><code>@VojtechVitek</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1127">go-chi/chi#1127</a></li> <li>Fix defaultLogEntry.Panic not respecting NoColor setting by <a href="https://github.com/doganarif"><code>@doganarif</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1050">go-chi/chi#1050</a></li> <li>middleware: document printPrettyStack and harden NoColor panic test by <a href="https://github.com/VojtechVitek"><code>@VojtechVitek</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1131">go-chi/chi#1131</a></li> <li>feat(mux): support http QUERY method ietf rfc10008 by <a href="https://github.com/VojtechVitek"><code>@VojtechVitek</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1132">go-chi/chi#1132</a></li> <li>ci: pin GitHub Actions to full commit SHAs by <a href="https://github.com/XananasX7"><code>@XananasX7</code></a> in <a href="https://redirect.github.com/go-chi/chi/pull/1116">go-chi/chi#1116</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/DucMinhNe"><code>@DucMinhNe</code></a> made their first contribution in <a href="https://redirect.github.com/go-chi/chi/pull/1110">go-chi/chi#1110</a></li> <li><a href="https://github.com/doganarif"><code>@doganarif</code></a> made their first contribution in <a href="https://redirect.github.com/go-chi/chi/pull/1050">go-chi/chi#1050</a></li> <li><a href="https://github.com/XananasX7"><code>@XananasX7</code></a> made their first contribution in <a href="https://redirect.github.com/go-chi/chi/pull/1116">go-chi/chi#1116</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/go-chi/chi/compare/v5.3.0...v5.3.1">https://github.com/go-chi/chi/compare/v5.3.0...v5.3.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/go-chi/chi/commit/8b258c7bb28f97a5f2a856ff7ef962578fec9215"><code>8b258c7</code></a> ci: pin GitHub Actions to full commit SHAs (<a href="https://redirect.github.com/go-chi/chi/issues/1116">#1116</a>)</li> <li><a href="https://github.com/go-chi/chi/commit/caf87e6e1bd9f29326f2ffdb93d8098139f08e4f"><code>caf87e6</code></a> feat(mux): support http QUERY method ietf rfc10008 (<a href="https://redirect.github.com/go-chi/chi/issues/1132">#1132</a>)</li> <li><a href="https://github.com/go-chi/chi/commit/7fcb8a20364d7b72e2d5a0e413ae80346e1c99c8"><code>7fcb8a2</code></a> middleware: document printPrettyStack and harden NoColor panic test (<a href="https://redirect.github.com/go-chi/chi/issues/1131">#1131</a>)</li> <li><a href="https://github.com/go-chi/chi/commit/878fe71fc9e506a63ea6957ed09c9ce84f789e97"><code>878fe71</code></a> Fix defaultLogEntry.Panic not respecting NoColor setting (<a href="https://redirect.github.com/go-chi/chi/issues/1050">#1050</a>)</li> <li><a href="https://github.com/go-chi/chi/commit/d7b767bcbea51e486bdc9fd06d25136767ec14b5"><code>d7b767b</code></a> feat(middleware): add text/xml and application/xml to default compressible ty...</li> <li><a href="https://github.com/go-chi/chi/commit/3b50c7cc35ff25f384202409733c3332c150e0ec"><code>3b50c7c</code></a> Tidy build directives (<a href="https://redirect.github.com/go-chi/chi/issues/1113">#1113</a>)</li> <li><a href="https://github.com/go-chi/chi/commit/2b9fca258f92830fc8232582e9e05a4d4a572a5d"><code>2b9fca2</code></a> Honor Discard() in httpFancyWriter.ReadFrom (<a href="https://redirect.github.com/go-chi/chi/issues/1110">#1110</a>)</li> <li>See full diff in <a href="https://github.com/go-chi/chi/compare/v5.3.0...v5.3.1">compare view</a></li> </ul> </details> <br /> Updates `github.com/klauspost/compress` from 1.18.6 to 1.19.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/klauspost/compress/releases">github.com/klauspost/compress's releases</a>.</em></p> <blockquote> <h2>v1.19.0</h2> <h2>What's Changed</h2> <ul> <li>zstd: Add true concurrent stream encoding by <a href="https://github.com/klauspost"><code>@klauspost</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1136">klauspost/compress#1136</a></li> <li>zstd: arm64 decoder asm by <a href="https://github.com/lizthegrey"><code>@lizthegrey</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1160">klauspost/compress#1160</a></li> <li>zstd: avoid unused BuildDict encoder allocation by <a href="https://github.com/snissn"><code>@snissn</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1147">klauspost/compress#1147</a></li> <li>flate: Add inflate checkpoints by <a href="https://github.com/klauspost"><code>@klauspost</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1154">klauspost/compress#1154</a></li> <li>snappy/s2: Limit length of varint in <code>decodedLen</code> by <a href="https://github.com/eustas"><code>@eustas</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1148">klauspost/compress#1148</a></li> <li>gzhttp: match qvalue parameter case-insensitively (RFC 7231) by <a href="https://github.com/z9z"><code>@z9z</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1149">klauspost/compress#1149</a></li> <li>zip: add NameDecoder callback for legacy encoding rewrite by <a href="https://github.com/SAY-5"><code>@SAY-5</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1150">klauspost/compress#1150</a></li> <li>huff0: Allow building tables from histogram. by <a href="https://github.com/klauspost"><code>@klauspost</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1155">klauspost/compress#1155</a></li> <li>huff0: Allow building table from oversized histogram. by <a href="https://github.com/klauspost"><code>@klauspost</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1156">klauspost/compress#1156</a></li> <li>s2sx: Clean symlink targets by <a href="https://github.com/klauspost"><code>@klauspost</code></a> in <a href="https://redirect.github.com/klauspost/compress/pull/1163">klauspost/compress#1163</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/snissn"><code>@snissn</code></a> made their first contribution in <a href="https://redirect.github.com/klauspost/compress/pull/1147">klauspost/compress#1147</a></li> <li><a href="https://github.com/eustas"><code>@eustas</code></a> made their first contribution in <a href="https://redirect.github.com/klauspost/compress/pull/1148">klauspost/compress#1148</a></li> <li><a href="https://github.com/z9z"><code>@z9z</code></a> made their first contribution in <a href="https://redirect.github.com/klauspost/compress/pull/1149">klauspost/compress#1149</a></li> <li><a href="https://github.com/SAY-5"><code>@SAY-5</code></a> made their first contribution in <a href="https://redirect.github.com/klauspost/compress/pull/1150">klauspost/compress#1150</a></li> <li><a href="https://github.com/HNO3Miracle"><code>@HNO3Miracle</code></a…
Summary
After
v1.11.0enabled telemetry by default via the server feature flag, high-QPS workloads produced excessive 429s on/telemetry-ext. Three issues compounded:internal/client.RetryableClient), which already retries 429/5xx withRetry-After. Result: up toRetryMax × (MaxRetries+1)HTTP attempts per export, all collapsed into a single circuit-breaker outcome — so the breaker barely opened against persistent throttling.User-Agent, so 429s landed in access logs tagged asGo-http-client/1.1and could not be attributed togodatabrickssqlconnectorby driver version.FlushInterval=5s/BatchSize=100.Changes
Retry behavior
telemetry/exporter.go— RemoveddoExport's retry loop entirely. doExport now makes a single HTTP request; transient retries (429/5xx,Retry-After) are owned by the underlying retryablehttp client. Eachexport()call now corresponds to exactly one HTTP transaction = one breaker outcome.telemetry/config.go,telemetry/driver_integration.go— RemovedMaxRetries/RetryDelayfromtelemetry.ConfigandTelemetryInitOptions.telemetry_retry_count/telemetry_retry_delayDSN params still parse without error for backwards compatibility but are no-ops.Identifiability
connector.go— NewbuildUserAgenthelper mirroringinternal/client/client.go:295-302exactly:DriverName/DriverVersion+ optionalUserAgentEntry+ agent product.telemetry/exporter.go,telemetry/featureflag.go— SetUser-Agenton telemetry POST and feature-flag GET. Plumbed viaTelemetryInitOptions.UserAgent.Cadence and breaker tuning
telemetry/config.go—FlushInterval5s → 30s,BatchSize100 → 200.telemetry/circuitbreaker.go—minimumNumberOfCalls20 → 10 (so low-traffic clients can trip the breaker now that each export is one signal),waitDurationInOpenState30s → 60s (respect typicalRetry-After).Tests
TestExport_RetryOn5xx,TestExport_ExponentialBackoff,TestIsRetryableStatus, retry-config parsing tests).TestExport_SingleAttemptPerExportcovering 4xx/429/5xx, asserting the exporter never retries.TestExport_SetsUserAgentandTestFetchFeatureFlag_SetsUserAgent.Mitigation
While this rolls out, users can opt out via DSN:
enableTelemetry=false. Server-side: disableenableTelemetryForGoDriverfor affected workspaces.Test plan
go test ./...— all green locally./telemetry-extand/api/2.0/connector-service/feature-flags/GOLANG/...requests carrygodatabrickssqlconnector/<version>inhttp_user_agent./telemetry-extdrops after rollout.This pull request and its description were written by Isaac.