dejan2609 commented on PR #23730:
URL: https://github.com/apache/kafka/pull/23730#issuecomment-6212834323

   Thank you for a review Luke !  Answers below:
   
   1. `testImplementation libs.caffeine` is added into `:core` and `:clients`; 
**rationale:**
   - trunk situation:   ApacheDS version 2.0.0-M24 is using Ehcache (i.e. not 
Caffeine); `:core` and `:clients` are receiving their Caffeine version via 
`:storage` (i.e. they are receiving `gradle/dependencies.gradle` Caffeine 
version 3.2.4)
   - this PR: ApacheDS version 2.0.0.AM26 is using Caffeine 2.7.0 that wins in 
`:core` and `:clients` (over `:storage`Caffeine version 3.2.4)
   - it means that test are failing because Caffeine 3 class can't be found in 
Caffeine 2
   - hence explicit Caffeine 3.2.4 version declaration is required in both 
`:core` and `:clients`
   - _note: this actually in not a version upgrade but rather version conflict 
resolution_
   
   This is a must or else test will fail; scenario:
   - starting point --> this PR:
   ```
   dejan@home:~/kafka$ git log -5 --oneline 
   c97db66d1ef (HEAD -> KAFKA-21232, origin/KAFKA-21232) KAFKA-21232 fix thread 
leak in MiniKdc after MINA upgrade
   e6701d2487e KAFKA-21232 fix for failing tests - new Apache DS version brings 
in old caffeine versions so we must declare caffeine version explicitly
   9e4444dc7d5 (KAFKA-21232-TEST) KAFKA-21232 fix: Apache Ldap api 2.0.2 has to 
bse used (in conjuction with Apache DS 2.0.0.AM26)
   aef4b5a4ad0 KAFKA-21232 Version ugrade: Apache Ldap api and directory server 
dependencies
   f7a6dfe0769 (upstream/trunk, upstream/HEAD) MINOR: Migrate 
PlaintextConsumerAssignorsTest to Java (#23708)
   ```
   - go back to the point when there were no test dependencies changes: `git 
checkout 9e4444dc7d5`
   ```
   dejan@home:~/kafka$ git log -3 --oneline 
   9e4444dc7d5 (HEAD, KAFKA-21232-TEST) KAFKA-21232 fix: Apache Ldap api 2.0.2 
has to bse used (in conjuction with Apache DS 2.0.0.AM26)
   aef4b5a4ad0 KAFKA-21232 Version ugrade: Apache Ldap api and directory server 
dependencies
   f7a6dfe0769 (upstream/trunk, upstream/HEAD, origin/old-trunk) MINOR: Migrate 
PlaintextConsumerAssignorsTest to Java (#23708)
   ```
   - execute test: `./gradlew :core:test --tests 
kafka.server.ListOffsetsRequestWithRemoteStoreTest`
   - test results: Caffeine 3 class can't be found in Caffeine 2:
   
   ```
   Gradle Test Run :core:test > Gradle Test Executor 3 > 
ListOffsetsRequestWithRemoteStoreTest > 
testResponseDefaultOffsetAndLeaderEpochForAllVersions(short) > 
"testResponseDefaultOffsetAndLeaderEpochForAllVersions(short).version=1" FAILED
       java.lang.NoSuchMethodError: 
'com.github.benmanes.caffeine.cache.Caffeine 
com.github.benmanes.caffeine.cache.Caffeine.evictionListener(com.github.benmanes.caffeine.cache.RemovalListener)'
   ```
   
   ___
   
   2. as for `testFixturesImplementation libs.commonsText' --> **this is a 
brand new dependency**
   - this change is also required: due to dependency tree change class 
`org.apache.commons.lang.text.StrSubstitutor` import fails (more details can be 
found here: https://github.com/apache/kafka/pull/23730/changes#r4197770574)
   
   
   Let me know is this enough or I need to expand on these answers @showuon.


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