-
Notifications
You must be signed in to change notification settings - Fork 23
Configurable batch size #389
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
base: dev_performance_test_improvements
Are you sure you want to change the base?
Configurable batch size #389
Conversation
e881b8f
to
6900c8c
Compare
9e73424
to
ed0fb03
Compare
6900c8c
to
9b3c43a
Compare
15928f1
to
4209743
Compare
9b3c43a
to
25ec968
Compare
4209743
to
9f4461f
Compare
25ec968
to
7d20ea4
Compare
7d20ea4
to
e8bd34f
Compare
8bb5221
to
4ad7f02
Compare
rebalances in case of long processing time
f776f0c
to
0a91e33
Compare
0a91e33
to
e62aee1
Compare
92368f1
to
cfa7321
Compare
94e66ba
to
4f22357
Compare
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Checked the code and documentation, checking tests and perf scripts next.
@@ -1,3 +1,12 @@ | |||
# confluent-kafka-javascript 1.6.1 | |||
|
|||
v1.6.1 is a maintenance release. It is supported for all usage. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Let's make it 1.7.0
- An API compatible version of `eachBatch` is available, maximum batch size | ||
can be configured through the `js.consumer.max.batch.size` configuration property | ||
and defaults to 32. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- An API compatible version of `eachBatch` is available, maximum batch size | |
can be configured through the `js.consumer.max.batch.size` configuration property | |
and defaults to 32. | |
- An API compatible version of `eachBatch` is available, maximum batch size | |
can be configured through the `js.consumer.max.batch.size` configuration property | |
and defaults to 32. It is not dependent on the size of the batches present on the broker, as the batches are constructed client-side. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, I think we should add that while we start attempting to fill batches with js.consumer.max.batch.size
, it may be scaled down based on the actual messages received.
this.#cacheExpirationTimeoutMs = this.#maxPollIntervalMs; | ||
rdKafkaConfig['max.poll.interval.ms'] = this.#maxPollIntervalMs * 2; | ||
|
||
if (rdKafkaConfig['js.consumer.max.batch.size'] !== undefined) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (rdKafkaConfig['js.consumer.max.batch.size'] !== undefined) { | |
if (Object.hasOwn(rdKafkaConfig, 'js.consumer.max.batch.size')) { |
Closes #286.
batch size is now configurable through the 'js.max.batch.size` property (-1 for unlimited batch size). Even when unlimited batch sizes are actually limited by librdkafka consumer buffer.
Checklist
Test & Review
automatic tests and running the performance example