Uploaded image for project: 'Openfire'
  1. OF-1649

Race condition with adding/cleaning rooms

    Details

    • Type: Bug
    • Status: Resolved (View workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects versions: 4.2.3
    • Fix versions: 4.4.0
    • Components: MUC
    • Labels:
      None

      Description

      To expand on the explanation given on the forums;

      1. org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl#processPacket calls org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl#getChatUser to get/create a user.
      2. org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl#processPacket calls org.jivesoftware.openfire.muc.spi.LocalMUCUser#process(org.xmpp.packet.Presence)
      3. In a background thread, org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl#checkForTimedOutUsers removes the user as they have not joined the room
      4. org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl#processPacket calls org.jivesoftware.openfire.muc.spi.LocalMUCUser#process(org.xmpp.packet.Presence) tries (fails) to add the user to the room.

        Attachments

          Activity

            People

            • Assignee:
              Greg Thomas
              Reporter:
              Greg Thomas
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: