Skip to content

Changes from upstream up to 2.8.0 tag #1

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

Merged
merged 30 commits into from
Apr 10, 2025
Merged

Changes from upstream up to 2.8.0 tag #1

merged 30 commits into from
Apr 10, 2025

Conversation

define-null
Copy link
Contributor

No description provided.

emasab and others added 30 commits August 5, 2024 11:29
and add build checks with different configurations
fallback happens when any topic to fetch has a zero topic id,
that can happen if the cluster has a Fetch version that is greater or equal to 13 but an inter broker protocol version that is less than 2.8
add missing consumer metrics described in the KIP:

* consumer.coordinator.rebalance.latency.avg
* consumer.coordinator.rebalance.latency.max
* consumer.coordinator.rebalance.latency.total
* consumer.fetch.manager.fetch.latency.avg
* consumer.fetch.manager.fetch.latency.max
* consumer.poll.idle.ratio.avg
* consumer.coordinator.commit.latency.avg
* consumer.coordinator.commit.latency.max

additionally:

* add unit tests for all the metrics
* add integrations tests with the producer or consumer while they're active
* configurable group initial rebalance delay ms to make integration tests reusable with both producer and consumer
---------
Co-authored-by: mahajanadhitya <[email protected]>
Co-authored-by: Anchit Jain <[email protected]>
Co-authored-by: Emanuele Sabellico <[email protected]>
also fix macOS build issue
---------

Co-authored-by: Emanuele Sabellico <[email protected]>
…tions (#4845)

* electLeaders Api 1st draft

* Minor change

* Elect Leaders API final

* minor change

* Added a function

* Minor Change

* removed binary file from pr

* Style fix

* Resolve documentation errors

* resolved build errors

* first round of comments

* name fixes

* second round of comments

* memory deallocation fix

* Changelog changes addition

* changes

* variable naming change

* third round comments

* grammar change

* latest changes

* additional formatting

* documentation changes

* additional comments

* one more round comments

* election type count

* name change election type cnt

* new comments

* removing election type check

* removing merge conflicts

* changelog.md changes

* new changes

* Fixing failing tests

* Moved top level error code from response to event

* changed topic partition result structure

* style fix

* remove null partitions check

* requested changes

* introduction md formatting

* requested changes

* partitions cnt print

---------

Co-authored-by: Pranav Rathi <[email protected]>
from external API and avoid exposing internal destructor
AK 2.7 is the first version implementing Fetch 12, before that it shouldn't fallback to v12, neither check if topic IDs are supported.
when potential topic partitions are less than number of members.
…754)

as replicas reply with "NOT_LEADER_OR_FOLLOWER" when using the replica id, Java clients sends requests to the leader too.


Co-authored-by: Kyle Phelps <[email protected]>
…a instances (#4724)

Circular dependencies from a partition fetch queue message to  the same partition blocked the destroy of an instance, that happened in case the partition was removed from the cluster while it was being consumed. Solved by purging internal partition queue, after being stopped and removed, to allow reference count to reach zero and trigger a destroy.

Purging internal fetch queue on removing the partition only for the consumer.
* Security upgrade for OpenSSL and Curl, CVEs fixed:

OpenSSL
- CVE-2024-2511
- CVE-2024-4603
- CVE-2024-4741
- CVE-2024-5535
- CVE-2024-6119

CURL
- CVE-2024-8096
- CVE-2024-7264
- CVE-2024-6874
- CVE-2024-6197

* Fix for curl configure failure caused by
curl/curl#14373
must be equal to the server sent nonce, that already contains the client side nonce. librdkafka was incorrectly concatenating the client side nonce again, leading to this fix being made on AK side, released in 3.8.1, with endsWith instead of equals.
apache/kafka@0a00456
except the Style check job because it needs clang format 10
Fix to inherit javac path, needed by test 0098
Mock handler implementation
Rename current consumer protocol from generic to classic
Mock handler with automatic or manual assignment
More consumer group metadata getters
Test helpers
Configurable session timeout and HB interval
Fix mock handler ListOffsets response
LeaderEpoch instead of CurrentLeaderEpoch
Integration tests passing with AK trunk
Improve documentation and KIP 848 specific mock tests
Add mock tests for unknown topic id in metadata request and partial reconciliation
Make test 0147 more reliable
Fix test 0106 after HB timeout change
Exclude test case with AK trunk
Rename rd_kafka_buf_write_tags to rd_kafka_buf_write_tags_empty
Trivup 0.12.5 can run a KafkaCluster directly with KRaft and AK trunk
Trivup 0.12.6 build with a specific commit
Trivup 0.12.7 with fixes for AK 3.8.0 and Py 3.12
New version of trivup 0.12.7 to fix an issue with apache/kafka#16464 on AK > 3.8.0
Static group membership mock tests
Move test 0147 to a different PR
Disable interactive "needsrestart" prompt
* test_read_file can read binary files too
* Trivup 0.12.8
* Read certificate CA chain when set using a configuration setter with PEM format. Test that CA with untrusted chain fails authentication.
* Test untrusted certificate signed with an intermediate CA
* Remove private key and duplicate certs from pem client certificate
* Print logs sent as events
* Trivup now already inheriths the environment in interactive mode
* Use namespace to avoid conflicts on TestEventCb
…h with client certificate chain (#4900)

Failing test: expect the error code that is received when no certificate is sent instead of the one received when it's sent but not trusted.
Client cert callback to check if trusted certificate authorities match with client certificate chain.
Log a warning when client certificate isn't sent


---------

Co-authored-by: trnguyencflt <[email protected]>
… leader epoch (#4901)

Failing tests including for #4796 and #4804
Closes #4796 and #4804
CHANGELOG
Fix for the correct expected RPC code in test 0139
Apply same fix to metadata update operation too
Don't change rktp state to active when there's no leader but wait it's available to validate it
Comment about excluded -1 value
An incorrect assumption is made that libssl is built with support for
the (now-deprecated) ENGINE API if it is provided by OpenSSL >= 1.1.0 or
LibreSSL. OPENSSL_NO_ENGINE is defined by OpenSSL and all of its forks
if the ENGINE API was disabled at compile-time - ensure that the
definition of OPENSSL_NO_ENGINE is taken into account when using ENGINE
features.
…and client is using SASL authentication only (#4936)

without any client certificate set
@define-null define-null self-assigned this Apr 9, 2025
@define-null define-null requested a review from stusmall April 9, 2025 23:31
@define-null define-null changed the title Changes to upstream up to 2.8.0 tag Changes from upstream up to 2.8.0 tag Apr 9, 2025
@define-null define-null requested review from a team and joedevivo and removed request for stusmall April 9, 2025 23:58
@define-null define-null merged commit 53175a6 into master Apr 10, 2025
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.

9 participants