Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-3448

[GSS](7.1.0) SessionSynchronization callbacks allow concurrent access to SFSB

    Details

    • Target Release:
    • Steps to Reproduce:
      Hide
      1. Extract wfly_reproducer.tar.gz
      2. Set JBOSS_HOME
      3. Deploy server-side app:
        • cd server-sde
        • mvn wildfly:deploy
      4. Run client app:
        • cd client
        • mvn clean compile
        • mvn exec:exec
      Show
      Extract wfly_reproducer.tar.gz Set JBOSS_HOME Deploy server-side app: cd server-sde mvn wildfly:deploy Run client app: cd client mvn clean compile mvn exec:exec
    • Affects:
      Release Notes
    • Release Notes Docs Status:
      Documented as Known Issue

      Description

      Issue first encountered by customer in EAP5 (JBPAPP-11239).

      Assume a local SFSB, B1, with container managed transactions and a calling SFSB, B2, which has bean managed transactions. B1 implements the SessionSynchronization interface.

      When B2's bean managed transaction timesout whilst executing B1.exampleMethod(), B2's transaction aborts and the transaction reaper thread calls B1.afterCompletion(). However, the original worker thread that was executing B1.exampleMethod() continues to execute B1.exampleMethod() until it has completed. Hence it is possible for the B1 SFSB to be accessed concurrently. It is also possible for B1.afterCompletion() to finish executing before B1.exampleMethod().

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ryanemerson Ryan Emerson
                  Reporter:
                  bmaxwell Brad Maxwell
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  11 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: