apupier opened a new pull request, #21958:
URL: https://github.com/apache/camel/pull/21958

   inetgration tests for Kafka 4.x
   
   Problem Explanation
   The Kafka transaction tests were failing with Strimzi container after 
upgrading to Kafka 4 due to a network exception in the 
AddPartitionsToTxnManager. The error occurred because:
   
   Missing inter-broker listener configuration: The StrimziContainer didn't 
have a dedicated BROKER listener for internal broker-to-broker communication
   Transaction manager connection failure: When Kafka transactions tried to add 
partitions, the AddPartitionsToTxnManager attempted to connect to the broker 
using the inter-broker listener, but it defaulted to PLAINTEXT which was 
configured for external access only Port mismatch: The transaction manager 
tried connecting to localhost:43347 (a random port) instead of the correct 
internal listener Solution Applied
   Updated StrimziContainer.java to match the working configuration pattern 
from ConfluentContainer.java:
   
   Changes Made:
   Added dedicated BROKER listener (line 50):
   
   Changed from: PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093 Changed to:
   PLAINTEXT://0.0.0.0:9092,BROKER://0.0.0.0:9093,CONTROLLER://0.0.0.0:9094 
Updated listener security protocol map (line 52):
   
   Added BROKER:PLAINTEXT mapping
   Added inter-broker listener name (line 53):
   
   New: KAFKA_INTER_BROKER_LISTENER_NAME=BROKER
   Updated controller quorum voters (line 54):
   
   Changed from: 1@localhost:9093
   Changed to: 1@localhost:9094 (controller now on separate port) Updated 
advertised listeners (line 89):
   
   Added BROKER listener: BROKER://localhost:9093
   Added inter.broker.listener.name override (line 67):
   
   Ensures the configuration is properly passed to Kafka server This fix 
ensures that internal broker communication (including transaction coordination) 
uses the dedicated BROKER listener on localhost:9093, while external clients 
connect via PLAINTEXT on the mapped port. The configuration now properly 
supports Kafka 4.x transactions in KRaft mode.
   
   co-authored: IBM Bob IDE 1.0.0
   
   # Description
   
   <!--
   - Write a pull request description that is detailed enough to understand 
what the pull request does, how, and why.
   -->
   
   # Target
   
   - [ ] I checked that the commit is targeting the correct branch (Camel 4 
uses the `main` branch)
   
   # Tracking
   - [ ] If this is a large change, bug fix, or code improvement, I checked 
there is a [JIRA issue](https://issues.apache.org/jira/browse/CAMEL) filed for 
the change (usually before you start working on it).
   
   <!--
   # *Note*: trivial changes like, typos, minor documentation fixes and other 
small items do not require a JIRA issue. In this case your pull request should 
address just this issue, without pulling in other changes.
   -->
   
   # Apache Camel coding standards and style
   
   - [ ] I checked that each commit in the pull request has a meaningful 
subject line and body.
   
   <!--
   If you're unsure, you can format the pull request title like `[CAMEL-XXX] 
Fixes bug in camel-file component`, where you replace `CAMEL-XXX` with the 
appropriate JIRA issue.
   -->
   
   - [ ] I have run `mvn clean install -DskipTests` locally from root folder 
and I have committed all auto-generated changes.
   
   <!--
   You can run the aforementioned command in your module so that the build 
auto-formats your code. This will also be verified as part of the checks and 
your PR may be rejected if if there are uncommited changes after running `mvn 
clean install -DskipTests`.
   
   You can learn more about the contribution guidelines at 
https://github.com/apache/camel/blob/main/CONTRIBUTING.md
   -->
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to