Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-13307

Different behaviour for concurrent StatefulSessionBean invocation

    XMLWordPrintable

Details

    • Hide

      Create a simple SFSB which cause the invocation to take longer than the 5sec timeout
      Invoke the same proxy concurrent and use a clustered environment (one server will do)

      Show
      Create a simple SFSB which cause the invocation to take longer than the 5sec timeout Invoke the same proxy concurrent and use a clustered environment (one server will do)

    Description

      According to the EJB contract a SFSB invocation is exclusive and the same instance can not be used concurrent.
      If done the invocation will wait to get the Lock for this and fail if the request takes too long.

      In case of a simple unclustered profile this is working and the exception is this:
      Exception in thread "main" javax.ejb.ConcurrentAccessTimeoutException: WFLYEJB0228: EJB 3.1 FR 4.3.14.1 concurrent access timeout on SimpleStatefulBean - could not obtain lock within 5000 MILLISECONDS

      In case of a clustered server environment this is hidden by Infinispan ERROR
      Exception in thread "main" javax.ejb.EJBException: org.infinispan.util.concurrent.TimeoutException: ISPN000299: Unable to acquire lock after 15 seconds for key InfinispanBeanKey(UUIDSessionID [634883dc-e8a3-452e-ac15-d9a4ad6856e9]) and requestor GlobalTx:t460:7. Lock is held by GlobalTx:t460:6

      Attachments

        1. clusteredServer_72.log
          15 kB
        2. reproducer.zip
          41 kB
        3. simpleServer_72.log
          6 kB

        Issue Links

          Activity

            People

              pferraro@redhat.com Paul Ferraro
              cfang@redhat.com Cheng Fang
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: