Uploaded image for project: 'Quarkus'
  1. Quarkus
  2. QUARKUS-7130

Caffeine @CacheResult fails to sychronize concurrent access when first Uni fails

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • 3.27.NEXT
    • 3.27.2.GA, 3.27.2.CR1
    • cache
    • False
    • Hide

      None

      Show
      None
    • False
    • Hide

      git clone git@github.com:quarkus-qe/quarkus-test-suite.git
      cd quarkus-test-suite/cache/caffeine
      mvn clean verify -Pnative -Dtest=UniFailureCacheIT#testConcurrentAccessAndRecovery -Dreruns=0

      Show
      git clone git@github.com:quarkus-qe/quarkus-test-suite.git cd quarkus-test-suite/cache/caffeine mvn clean verify -Pnative -Dtest=UniFailureCacheIT#testConcurrentAccessAndRecovery -Dreruns=0
    • ---

      During the testing of 3.27.2.CR1, one of our tests UniFailureCacheIT.testConcurrentAccessAndRecovery  is failing in native mode with error:  

      AssertionFailedError: Cache lock should prevent excessive calls. Expected <= 2, but was 3  

      This is a known upstream Quarkus issue where @CacheResult annotation does not properly synchronize concurrent access whe the first Uni fails.
      Upstream issue: https://github.com/quarkusio/quarkus/issues/51928#issuecomment-3776949738 

      There is a fix PR here: https://github.com/quarkusio/quarkus/pull/52150 (milestone 3.32) but was not backported to 3.27 branch.

      I hit this failure in our native  Jenkins job (but it's not exclusive occurs on native) : 
      https://jenkins-csb-quarkusqe-main.dno.corp.redhat.com/view/rhbq-3.27-general/job/rhbq-3.27-rhel8-jdk21-baremetal-ts-native/jdk=openjdk-21,label=RHEL8%20&&%20xlarge%20&&%20docker,scenario=misc/lastCompletedBuild/testReport/

       

              karestig@redhat.com Katia Aresti
              rhn-support-jcarranz Jose Carranza
              Jose Carranza Jose Carranza
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: