Skip to content

Fatal Exception: java.util.ConcurrentModificationException #710

Open

Description

@malik082009

I am getting the below mentioned error frequently while I am using in the application and I am using the version
I face this issue in the middle of the app. don't know why.

Fatal Exception: java.util.ConcurrentModificationException at java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java:757) at java.util.LinkedHashMap$LinkedKeyIterator.next(LinkedHashMap.java:780) at io.socket.hasbinary.HasBinary._hasBinary(HasBinary.java:47) at io.socket.hasbinary.HasBinary._hasBinary(HasBinary.java:39) at io.socket.hasbinary.HasBinary.hasBinary(HasBinary.java:18) at io.socket.parser.IOParser$Encoder.encode(IOParser.java:27) at io.socket.client.Manager.packet(Manager.java:412) at io.socket.client.Socket.packet(Socket.java:230) at io.socket.client.Socket.access$1000(Socket.java:18) at io.socket.client.Socket$6.run(Socket.java:219) at io.socket.thread.EventThread.exec(EventThread.java:55) at io.socket.client.Socket.emit(Socket.java:198) at io.socket.client.Socket$5.run(Socket.java:183) at io.socket.thread.EventThread$2.run(EventThread.java:80) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:923)

I am using:
implementation('io.socket:socket.io-client:2.0.1') { exclude group: 'org.json', module: 'json' }

Platform:

  • Device: [OnePlus Nord N10]
  • OS: [Android 11]

Same issue reported here

Activity

  1. liangyuanpeng commented on Jun 24, 2022

    @liangyuanpeng

    Have some code to reproduce it will be great. or some step to reproduce it.

  2. seven4pl commented on Sep 28, 2022

    @seven4pl

    Same here...

    For example: sending 300 messages (offline) with AckWithTimeout (5000 ms), and then after eg. 2 seconds emit new message.

    Exception java.util.ConcurrentModificationException:
    at java.util.LinkedList$ListItr.checkForComodification (LinkedList.java:970)
    at java.util.LinkedList$ListItr.next (LinkedList.java:892)
    at io.socket.client.Socket$6$1.run (Socket.java:232)
    at java.util.TimerThread.mainLoop (Timer.java:563)
    at java.util.TimerThread.run (Timer.java:513)

  3. seven4pl commented on Oct 4, 2022

    @seven4pl

    @liangyuanpeng temporary solved by adding synchronized - Socket.java:

    synchronized(sendBuffer){
              // remove the packet from the buffer (if applicable)
              Iterator<Packet<JSONArray>> iterator = sendBuffer.iterator();
              while (iterator.hasNext()) {
                  if (iterator.next().id == ackId) {
                      iterator.remove();
                  }
              }
            }
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions