Skip to content

Merge upstream master to f109600#9

Open
keithwoody wants to merge 42 commits intomasterfrom
merge-upstream-master-to-f109600
Open

Merge upstream master to f109600#9
keithwoody wants to merge 42 commits intomasterfrom
merge-upstream-master-to-f109600

Conversation

@keithwoody
Copy link

Sync with zendesk/ruby-kafka

dasch and others added 30 commits October 14, 2020 13:05
fix Kafka::TransactionManager#send_offsets_to_txn
In the example, one consumer sometimes consumers all messages
before another consumer joins. As a result, the example is
unstable. This commit makes it stable by ensuring all consumers
have joined.
Resolve "Passing the keyword argument as ..." deprecation warning
…-error

Resolve RSpec::Mocks::OutsideOfExampleError
Co-authored-by: Daniel Schierbeck <dasch@zendesk.com>
…ategy-example-stable

Make "consuming messages with a custom assignment strategy" stable
Steven Diviney and others added 12 commits February 1, 2021 20:32
Add `murmur2_random` support for message partitioning.
Control batches can show up even outside of transactions. This change
drops the requirement that you must be in a transaction for a record to
be labled a control batch.
By default, the Java implementation of a Kafka client can use
each returned IP address from a hostname.
cf. https://kafka.apache.org/documentation/#client.dns.lookup

librdkafka also does:
> If host resolves to multiple addresses librdkafka will
> round-robin the addresses for each connection attempt.

cf. https://github.com/edenhill/librdkafka/blob/v1.5.3/INTRODUCTION.md#brokers

Such a feature helps us to manage seed brokers' IP addresses
easily, so this commit implements it.
This commit resolves the following warnings:

```
% yard doc
[warn]: @param tag has unknown parameter name: group_id:
    in file `lib/kafka/cluster.rb' near line 122
[warn]: @param tag has unknown parameter name: transactional_id:
    in file `lib/kafka/cluster.rb' near line 132
[warn]: @param tag has unknown parameter name: string
    in file `lib/kafka/protocol/encoder.rb' near line 131
-- snip --
```
…ultiple-addresses

Support seed brokers' hostname with multiple addresses
Updated to ignore all control batches
When the error code is non-zero there isn't necessarily (ever?) an assignment. Currently the decoder raises a `TypeError` ("no implicit conversion of nil into String") - this updates the logic to only try to decode the assignment if there are any bytes.
…-sync-failure-responses

Handle SyncGroup responses with a non-zero error and no assignments
@stasCF
Copy link

stasCF commented Jul 20, 2021

@keithwoody do we still need to merge it? or better to open another sync?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants