Uploaded image for project: 'Weld'
  1. Weld
  2. WELD-865

Weld allows for concurrent call to conversation

    Details

      Description

      Concurrent calls to a @ConversationScoped component:

      Thread 1:

      AbstractConversationContext.activate(String cid)
      ConversationImpl.lock(long timeout) <-- returns true

      correctly proceed inside method

      Thread 2:

      AbstractConversationContext.activate(String cid)
      ConversationImpl.lock(long timeout) <-- returns false but activate() does not check result !!!

      incorrectly proceed inside method


      I think AbstractConversationContext.activate(String cid) should check the result of ConversationImpl.lock(long timeout) and not allow the second thread to proceed.

        Gliffy Diagrams

          Attachments

          1. untested-2.patch
            13 kB
            George Sapountzis
          2. untested-3.patch
            8 kB
            George Sapountzis
          3. untested-test-failure-condition-first.patch
            8 kB
            George Sapountzis

            Activity

              People

              • Assignee:
                alesj AleŇ° Justin
                Reporter:
                gsapountzis George Sapountzis
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: