Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump the franz-go group with 2 updates #21489

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 11, 2023

Bumps the franz-go group with 2 updates: github.com/twmb/franz-go and github.com/twmb/franz-go/pkg/kadm.

Updates github.com/twmb/franz-go from 1.14.3 to 1.15.3

Changelog

Sourced from github.com/twmb/franz-go's changelog.

v1.15.3

This patch release fixes one minor bug, reduces allocations on gzip and lz4 decompression, and contains a behavior improvement when OffsetOutOfRange is received while consuming.

For the bugfix: previously, if the client was using a fetch session (as is the default when consuming), and all partitions for a topic transfer to a different broker, the client would not properly unregister the topic from the prior broker's fetch session. This could result in more data being consumed and discarded than necessary (although, it's possible the broker just reset the fetch session anyway, I'm not entirely positive).

  • fdf371c use bytes buffer instead of ReadAll (thanks @​kalbhor!)
  • e6ed69f consuming: reset to nearest if we receive OOOR while fetching
  • 1b6a721 bugfix kgo source: use the proper topic-to-id map when forgetting topics

v1.15.2

This patch release fixes two bugs and changes Mark functions to be no-ops when not using AutoCommitMarks to avoid confusion. This also includes a minor commit further improving the sticky balancer. See the commits for more details.

  • 72778cb behavior change kgo: no-op mark functions when not using AutoCommitMarks
  • e209bb6 bugfix kgo: pin AddPartitionsToTxn to v3 when using one transaction
  • 36b4437 sticky: further improvements
  • af5bc1f bugfix kgo: be sure to use topics when other topics are paused

v1.15.1

This patch release contains a bunch of internal improvements to kgo and includes a bugfix for a very hard to encounter logic race. Each improvement is a bit focused on a specific use case, so I recommend reading any relevant-to-you commit message below.

As well, the kversion package now detects Kafka 3.6, and the kgo package now handles AddPartitionsToTxn v4 (however, you will probably not be issuing this request).

Lastly, this release is paired with a minor kadm release, which adds the ErrMessage field CreateTopicsResponse and DeleteTopicsResponse, and, importantly, fixes a data race in the ApiVersions request.

franz-go

  • 2a3b6bd improvement kversion: detect 3.6
  • fe5a660 improvement kgo: add sharding for AddPartitionsToTxn for KIP-890

... (truncated)

Commits
  • c09dc92 Merge pull request #632 from twmb/changelog-v1.15.3
  • 4524015 CHANGELOG: note incoming v1.15.3
  • e737c90 Merge pull request #629 from kalbhor/master
  • 3134cb2 Merge pull request #628 from twmb/621
  • 5076659 Merge pull request #627 from twmb/620
  • fdf371c use bytes buffer instead of ReadAll
  • e6ed69f consuming: reset to nearest if we receive OOOR while fetching
  • 1b6a721 kgo source: use the proper topic-to-id map when forgetting topics
  • a6d10d4 Merge pull request #617 from victoraugustolls/chore/transaction-id-typo
  • 3e9dc14 chore: fix typo
  • Additional commits viewable in compare view

Updates 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.

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.

  • ca67da4 bugfix kgo: fix batch coordinator fetching
  • c6f7f9a bugfix 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

... (truncated)

Commits
  • b48f848 Merge pull request #254 from twmb/v1.10.0
  • 215d922 CHANGELOG: document incoming 1.10.0
  • adacb82 Merge pull request #253 from twmb/sticky_fix
  • 41b1422 Merge pull request #250 from twmb/249
  • a995b1b kgo broker: retry sasl auth failures during reauthentication
  • 6bbe188 consumer group: clarify log line
  • dcfcacb {Cooperative,Sticky}Balancer: bug fix lack of stickiness
  • 8105c36 Merge pull request #251 from twmb/222
  • 76430a8 kgo: add option to consume preferring laggy partitions
  • cf392a3 kgo: bump FetchRequest to v13, add test to ensure we always track latest
  • Additional commits viewable in compare view

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 <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

@dependabot dependabot bot added changelog/no-changelog dependencies PRs that bump a dependency dependencies-go PRs that bump a go dependency team/triage labels Dec 11, 2023
@dependabot dependabot bot added this to the Triage milestone Dec 11, 2023
@pr-commenter
Copy link

pr-commenter bot commented Dec 11, 2023

Bloop Bleep... Dogbot Here

Regression Detector Results

Run ID: be7f2539-fde1-48c8-a17d-84002f3e1e97
Baseline: 2bbefc8
Comparison: 3aff1c9
Total CPUs: 7

Performance changes are noted in the perf column of each table:

  • ✅ = significantly better comparison variant performance
  • ❌ = significantly worse comparison variant performance
  • ➖ = no significant change in performance

No significant changes in experiment optimization goals

Confidence level: 90.00%
Effect size tolerance: |Δ mean %| ≥ 5.00%

There were no significant changes in experiment optimization goals at this confidence level and effect size tolerance.

Declared stable experiments that are now erratic

An experiment is erratic (i.e., not stable) if its coefficient of variation is at least 0.10.

perf experiment goal Δ mean % Δ mean % CI confidence
otel_to_otel_logs ingress throughput -1.99 [-2.76, -1.23] 100.00%

Declared erratic experiments that are now stable

An experiment is stable (i.e., not erratic) if its coefficient of variation is less than 0.10.

perf experiment goal Δ mean % Δ mean % CI confidence
file_tree memory utilization +0.22 [+0.12, +0.33] 99.95%
idle memory utilization +0.04 [+0.01, +0.07] 97.25%

Fine details of change detection per experiment

perf experiment goal Δ mean % Δ mean % CI confidence
process_agent_standard_check memory utilization +0.46 [+0.41, +0.51] 100.00%
file_tree memory utilization +0.22 [+0.12, +0.33] 99.95%
idle memory utilization +0.04 [+0.01, +0.07] 97.25%
trace_agent_msgpack ingress throughput +0.02 [-0.01, +0.04] 79.22%
dogstatsd_string_interner_128MiB_100 ingress throughput +0.00 [-0.05, +0.05] 0.00%
tcp_dd_logs_filter_exclude ingress throughput +0.00 [-0.06, +0.06] 0.00%
dogstatsd_string_interner_64MiB_100 ingress throughput +0.00 [-0.04, +0.04] 0.00%
dogstatsd_string_interner_8MiB_50k ingress throughput +0.00 [-0.04, +0.04] 0.00%
trace_agent_json ingress throughput +0.00 [-0.03, +0.03] 0.00%
dogstatsd_string_interner_8MiB_10k ingress throughput +0.00 [-0.04, +0.04] 0.00%
dogstatsd_string_interner_128MiB_1k ingress throughput +0.00 [-0.05, +0.05] 0.00%
dogstatsd_string_interner_8MiB_100 ingress throughput +0.00 [-0.04, +0.04] 0.00%
dogstatsd_string_interner_8MiB_1k ingress throughput -0.00 [-0.04, +0.04] 0.00%
dogstatsd_string_interner_64MiB_1k ingress throughput -0.00 [-0.04, +0.04] 0.00%
uds_dogstatsd_to_api ingress throughput -0.00 [-0.04, +0.04] 0.00%
dogstatsd_string_interner_8MiB_100k ingress throughput -0.00 [-0.01, +0.00] 68.00%
process_agent_standard_check_with_stats memory utilization -0.01 [-0.05, +0.03] 23.71%
process_agent_real_time_mode memory utilization -0.27 [-0.29, -0.24] 100.00%
file_to_blackhole % cpu utilization -0.48 [-7.09, +6.13] 9.52%
tcp_syslog_to_blackhole ingress throughput -1.09 [-1.15, -1.03] 100.00%
otel_to_otel_logs ingress throughput -1.99 [-2.76, -1.23] 100.00%

Explanation

A regression test is an A/B test of target performance in a repeatable rig, where "performance" is measured as "comparison variant minus baseline variant" for an optimization goal (e.g., ingress throughput). Due to intrinsic variability in measuring that goal, we can only estimate its mean value for each experiment; we report uncertainty in that value as a 90.00% confidence interval denoted "Δ mean % CI".

For each experiment, we decide whether a change in performance is a "regression" -- a change worth investigating further -- if all of the following criteria are true:

  1. Its estimated |Δ mean %| ≥ 5.00%, indicating the change is big enough to merit a closer look.

  2. Its 90.00% confidence interval "Δ mean % CI" does not contain zero, indicating that if our statistical model is accurate, there is at least a 90.00% chance there is a difference in performance between baseline and comparison variants.

  3. Its configuration does not mark it "erratic".

@dependabot dependabot bot force-pushed the dependabot/go_modules/franz-go-2000377287 branch from 41a6f54 to 2d72cb0 Compare December 18, 2023 12:26
Bumps the franz-go group with 2 updates: [github.com/twmb/franz-go](https://github.com/twmb/franz-go) and [github.com/twmb/franz-go/pkg/kadm](https://github.com/twmb/franz-go).


Updates `github.com/twmb/franz-go` from 1.14.3 to 1.15.3
- [Changelog](https://github.com/twmb/franz-go/blob/master/CHANGELOG.md)
- [Commits](twmb/franz-go@v1.14.3...v1.15.3)

Updates `github.com/twmb/franz-go/pkg/kadm` from 1.9.0 to 1.10.0
- [Changelog](https://github.com/twmb/franz-go/blob/master/CHANGELOG.md)
- [Commits](twmb/franz-go@v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: github.com/twmb/franz-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: franz-go
- dependency-name: github.com/twmb/franz-go/pkg/kadm
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: franz-go
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/go_modules/franz-go-2000377287 branch from 2d72cb0 to 3aff1c9 Compare December 18, 2023 20:11
Copy link
Contributor Author

dependabot bot commented on behalf of github Dec 25, 2023

Superseded by #21760.

@dependabot dependabot bot closed this Dec 25, 2023
@dependabot dependabot bot deleted the dependabot/go_modules/franz-go-2000377287 branch December 25, 2023 20:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog/no-changelog dependencies PRs that bump a dependency dependencies-go PRs that bump a go dependency team/triage
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants