Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 2.4.8.Final, 3.1.3.Final
    • Fix Version/s: 3.1.4.Final
    • Component/s: Conversations
    • Labels:
      None

      Description

      There was an issue with Weld 1 possibly causing a deadlock on WFLY when one thread attempts to replicate a session a another thread does the conversation context cleanup since both need a lock on a session (via getAttribute() and on a session parameter (map of all conversations over which we synchronize).

      I am not sure this issue exists on newer versions of Weld (2/3) - a lot has changed in regards to underlying structure; undertow wasn't used before, session replication options changed. Weld has very similar code in these bits throughout all its versions though.

      This is known to affect Weld 1.1.34.Final on WFLY for sure.
      We should apply a fix to Weld branches that doesn't require us to obtain two locks to clear up conversations. Draft of that is available on my branch - https://github.com/manovotn/core/tree/convRaceConditionFix_master

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  manovotn Matěj Novotný
                  Reporter:
                  manovotn Matěj Novotný
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: