DanielLeens opened a new pull request, #11178:
URL: https://github.com/apache/seatunnel/pull/11178

   ## What does this PR do?
   Preload the Kafka cleanup-only runtime classes before connector clients are 
recycled so deferred cleanup threads do not hit `NoClassDefFoundError` after 
Flink starts releasing the user-code classloader.
   
   ## Why is this needed?
   Recent unrelated PR CI runs repeatedly failed in `kafka-connector-it` with 
`NoClassDefFoundError: org/apache/kafka/common/network/Selector$CloseMode` from 
Kafka client cleanup paths. This change eagerly loads the cleanup class in the 
connector code paths that create Kafka runtime clients.
   
   ## Verification
   - `./mvnw -pl seatunnel-connectors-v2/connector-kafka -am spotless:apply 
-DskipTests`
   - `./mvnw -pl seatunnel-connectors-v2/connector-kafka 
-Dtest=KafkaDeferredCleanupClassPreloaderTest -DfailIfNoTests=false test`
   - Attempted: `./mvnw -pl 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-kafka-e2e 
-Dtest=KafkaIT#testKafkaToKafkaExactlyOnceOnStreaming -DfailIfNoTests=false 
test`
     - Blocked locally because the host Docker daemon timed out on the Unix 
socket and Testcontainers stalled in `KafkaIT.startUp()` while resolving the 
Docker client.
   
   ## Notes
   - No `seatunnel-engine-ui` module changes are included.
   - PR scope is limited to Kafka runtime client initialization plus one 
focused unit test.


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