v1.10.0 introduced support for batch offset fetching or coordinator finding.
These changes introduced a bug where empty coordinator keys (i.e., group names
or transactional IDs) would be stripped from requests, and then a field in a
nil pointer could be accessed and panic the program. These changes also
introduced a bug that did not properly mirror one field for batched
FindCoordinator requests.
c6f7f9abugfix kgo: allow empty groups when finding coordinator / fetching offsets
v1.10.3
This small patch release is another attempted fix at #239.
It is only possible to encounter this bug if a broker completely dies and never
comes back, and you do not replace the broker (i.e., broker 3 dies and it is
just gone forever).
Previously, kgo would cache the broker controller until NOT_CONTROLLER is
seen. We now clear it a bit more widely, but this is just extra defensive
behavior: the controller is updated on every metadata request.
Worse however, kgo previously cached group or transactional-id coordinators
until COORDINATOR_NOT_AVAILABLE, COORDINATOR_LOAD_IN_PROGRESS, or
NOT_CONTROLLER were seen. If the coordinator outright died and never comes
back and is never replaced, all coordinator requests to that specific
coordinator would fail.
Now, if we fail to dial the coordinator or controller 3x in a row, we delete
the coordinator or controller to force a reload on the next retry. We only do
this for dial errors because any other error means we actually contacted the
broker and it exists.
Lastly, we change the default max produce record batch bytes from 1,000,000 to
1,000,012, to exactly mirror Kafka's max.message.bytes.
e2e80bf kgo: clear controller/coordinator caches on failed dials
v1.10.2
This patch release contains one very minor bug fix, tightens a failure
scenario, adds two missing errors to kerr, fixes a build constraint, and has a
few internal style fixes from @PleasingFungus (thanks!).
The bug was introduced in v1.9.0 through a patch that fixed a potential spin
loop. In fixing the spin loop, I inadvertently caused consumer fetch sessions
to reset when there is no more data to consume. In your application, this would
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 commands and options
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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show 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)
Bumps github.com/twmb/franz-go/pkg/kadm from 1.9.0 to 1.10.0.
Changelog
Sourced from github.com/twmb/franz-go/pkg/kadm's changelog.
... (truncated)
Commits
b48f848
Merge pull request #254 from twmb/v1.10.0215d922
CHANGELOG: document incoming 1.10.0adacb82
Merge pull request #253 from twmb/sticky_fix41b1422
Merge pull request #250 from twmb/249a995b1b
kgo broker: retry sasl auth failures during reauthentication6bbe188
consumer group: clarify log linedcfcacb
{Cooperative,Sticky}Balancer: bug fix lack of stickiness8105c36
Merge pull request #251 from twmb/22276430a8
kgo: add option to consume preferring laggy partitionscf392a3
kgo: bump FetchRequest to v13, add test to ensure we always track latestDependabot 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 commands and options
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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show