ICEpush
  1. ICEpush
  2. PUSH-206

ConcurrentModificationException in LocalPushGroupManager causing the Timer to fail

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.0.0.GA_P01, 3.2
    • Fix Version/s: EE-3.2.0.GA, 3.3
    • Component/s: Push Library, Push Server
    • Labels:
      None
    • Environment:
      ICEpush and ICEpush-EE (EPS)

      Description

      java.util.ConcurrentModificationException
         at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
         at java.util.HashMap$ValueIterator.next(HashMap.java:822)
         at java.util.AbstractCollection.toArray(AbstractCollection.java:124)
         at java.util.ArrayList.<init>(ArrayList.java:131)
         at org.icepush.LocalPushGroupManager.scan(LocalPushGroupManager.java:79)
         at org.icepush.LocalPushGroupManager$Notification$1.handle(LocalPushGroupManager.java:369)
         at org.icepush.LocalNotificationBroadcaster$2.handlingConfirmed(LocalNotificationBroadcaster.java:90)
         at org.icepush.BlockingConnectionServer$5.run(BlockingConnectionServer.java:223)
         at java.util.TimerThread.mainLoop(Timer.java:512)
         at java.util.TimerThread.run(Timer.java:462)

      This Exception breaks the Timer causing a cascading number of Timer related Exceptions.

        Issue Links

          Activity

          Hide
          Jack Van Ooststroom added a comment -

          Sending icepush-ee/core/src/main/java/org/icepush/LocalPushGroupManager.java
          Transmitting file data .
          Committed revision 32918.

          Show
          Jack Van Ooststroom added a comment - Sending icepush-ee/core/src/main/java/org/icepush/LocalPushGroupManager.java Transmitting file data . Committed revision 32918.
          Hide
          Jack Van Ooststroom added a comment -

          Both groupMap and pushIDMap are now ConcurrentHashMaps. The iteration we have now takes this into account avoiding the additional creation of ArrayLists. Marking this one as FIXED.

          Show
          Jack Van Ooststroom added a comment - Both groupMap and pushIDMap are now ConcurrentHashMaps. The iteration we have now takes this into account avoiding the additional creation of ArrayLists. Marking this one as FIXED.

            People

            • Assignee:
              Jack Van Ooststroom
              Reporter:
              Jack Van Ooststroom
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: