Uploaded image for project: 'Undertow'
  1. Undertow
  2. UNDERTOW-282

randomly org.xnio.conduits.AbstractStreamSourceConduit.read() goes into infinite loop

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Blocker
    • 1.1.0.Final, 1.2.0.Beta6
    • None
    • SSL
    • None
    • Hide

      this is happening at random, usually after few hours of normal running.

      Show
      this is happening at random, usually after few hours of normal running.

    Description

      At random, one of threads gets into infinite loop. Typical thread looks like this:

      "default task-30" prio=10 tid=0x00007fdc28122800 nid=0x150d runnable [0x00007fdc2c393000]
         java.lang.Thread.State: RUNNABLE
      	at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
      	at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
      	at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:225)
      	at sun.nio.ch.IOUtil.read(IOUtil.java:193)
      	at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:375)
      	- locked <0x00000000e320c6c8> (a java.lang.Object)
      	at org.xnio.nio.NioSocketConduit.read(NioSocketConduit.java:280)
      	at org.xnio.conduits.AbstractStreamSourceConduit.read(AbstractStreamSourceConduit.java:51)
      	at org.xnio.ssl.JsseSslStreamSourceConduit.read(JsseSslStreamSourceConduit.java:84)
      	- locked <0x00000000e3212bf8> (a org.xnio.ByteBufferSlicePool$PooledByteBuffer)
      	at org.xnio.conduits.AbstractStreamSourceConduit.read(AbstractStreamSourceConduit.java:51)
      	at io.undertow.conduits.ReadDataStreamSourceConduit.read(ReadDataStreamSourceConduit.java:49)
      

      NOTE: some examples of full thread dumps attached below.

      NOTE: the thread in troubles was identified using ps H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu

      jboss     5215  5173  5389 01:23:41 30.9 /usr/lib/jvm/java-1.7.0/bin/java -D[Standalone] -server -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Dorg.jboss.boot.log.file=/op
      

      NOTE: 5389 == 0x150d

      Once thread got into this state it never recover.

      Attachments

        1. FirefoxScreenSnapz147.png
          FirefoxScreenSnapz147.png
          424 kB
        2. threads dump - 0x150d - 1.txt
          68 kB
        3. threads dump - 0x150d - 2.txt
          79 kB
        4. threads dump - 0x150d - 3.txt
          88 kB
        5. threads dump - 0x2611 - 1.txt
          81 kB
        6. threads dump - 0x2611 - 2.txt
          51 kB
        7. threads dump - 0x2611 - 3.txt
          51 kB

        Activity

          People

            sdouglas1@redhat.com Stuart Douglas
            atchijov-vgw Andrei Tchijov (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: