You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2011/05/12 09:32:01 UTC

DO NOT REPLY [Bug 51189] New: Acceptor threads are blocked

https://issues.apache.org/bugzilla/show_bug.cgi?id=51189

             Bug #: 51189
           Summary: Acceptor threads are blocked
           Product: Tomcat 7
           Version: 7.0.11
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: blocker
          Priority: P2
         Component: Connectors
        AssignedTo: dev@tomcat.apache.org
        ReportedBy: helinxiang@gmail.com
    Classification: Unclassified


Hi, 

   I deployed an web application on tomcat 7.0.11, it got acceptor threads
blocked when it ran two weeks, and the mysql connections weren't released, I
guess they are the same problem. I don't whether it is a bug of JIoEndpoint.

   Thanks a lot.
   EastMountain

Thread dump below:

""http-bio-8080"-Acceptor-3" daemon prio=10 tid=0x00002aaab4148000 nid=0x141d
waiting for monitor entry [0x00000000419ac000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388)
        - waiting to lock <0x00002abd72beb518> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:453)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at
org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
        at
org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
        at java.lang.Thread.run(Thread.java:619)

""http-bio-8080"-Acceptor-2" daemon prio=10 tid=0x00002aaab4898800 nid=0x141c
runnable [0x00000000411af000]
   java.lang.Thread.State: RUNNABLE
        at java.net.PlainSocketImpl.socketAccept(Native Method)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)
        - locked <0x00002abd72beb518> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:453)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at
org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
        at
org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
        at java.lang.Thread.run(Thread.java:619)

""http-bio-8080"-Acceptor-1" daemon prio=10 tid=0x00002aaab45a4800 nid=0x141b
waiting for monitor entry [0x0000000041930000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388)
        - waiting to lock <0x00002abd72beb518> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:453)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at
org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
        at
org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
        at java.lang.Thread.run(Thread.java:619)

""http-bio-8080"-Acceptor-0" daemon prio=10 tid=0x00002aaab48a7800 nid=0x141a
waiting for monitor entry [0x000000004116e000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388)
        - waiting to lock <0x00002abd72beb518> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:453)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at
org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
        at
org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
        at java.lang.Thread.run(Thread.java:619)

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


DO NOT REPLY [Bug 51189] Acceptor threads are blocked

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=51189

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |INVALID

--- Comment #1 from Mark Thomas <ma...@apache.org> 2011-05-12 14:36:06 UTC ---
That thread dump is normal.

The users mailing list is the place to seek help if your application becomes
unresponsive.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


Re: DO NOT REPLY [Bug 51189] New: Acceptor threads are blocked

Posted by Filip Hanik - Dev Lists <de...@hanik.com>.
on most OS:es there is a single lock for accepting new connections, so a better default is 1 for acceptor thread count.
there is no performance gain in multiple threads, none that I was ever able to detect.
Filip

On 5/12/2011 2:32 AM, bugzilla@apache.org wrote:
> https://issues.apache.org/bugzilla/show_bug.cgi?id=51189
>
>               Bug #: 51189
>             Summary: Acceptor threads are blocked
>             Product: Tomcat 7
>             Version: 7.0.11
>            Platform: All
>          OS/Version: Linux
>              Status: NEW
>            Severity: blocker
>            Priority: P2
>           Component: Connectors
>          AssignedTo: dev@tomcat.apache.org
>          ReportedBy: helinxiang@gmail.com
>      Classification: Unclassified
>
>
> Hi,
>
>     I deployed an web application on tomcat 7.0.11, it got acceptor threads
> blocked when it ran two weeks, and the mysql connections weren't released, I
> guess they are the same problem. I don't whether it is a bug of JIoEndpoint.
>
>     Thanks a lot.
>     EastMountain
>
> Thread dump below:
>
> ""http-bio-8080"-Acceptor-3" daemon prio=10 tid=0x00002aaab4148000 nid=0x141d
> waiting for monitor entry [0x00000000419ac000]
>     java.lang.Thread.State: BLOCKED (on object monitor)
>          at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388)
>          - waiting to lock<0x00002abd72beb518>  (a java.net.SocksSocketImpl)
>          at java.net.ServerSocket.implAccept(ServerSocket.java:453)
>          at java.net.ServerSocket.accept(ServerSocket.java:421)
>          at
> org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
>          at
> org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
>          at java.lang.Thread.run(Thread.java:619)
>
> ""http-bio-8080"-Acceptor-2" daemon prio=10 tid=0x00002aaab4898800 nid=0x141c
> runnable [0x00000000411af000]
>     java.lang.Thread.State: RUNNABLE
>          at java.net.PlainSocketImpl.socketAccept(Native Method)
>          at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)
>          - locked<0x00002abd72beb518>  (a java.net.SocksSocketImpl)
>          at java.net.ServerSocket.implAccept(ServerSocket.java:453)
>          at java.net.ServerSocket.accept(ServerSocket.java:421)
>          at
> org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
>          at
> org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
>          at java.lang.Thread.run(Thread.java:619)
>
> ""http-bio-8080"-Acceptor-1" daemon prio=10 tid=0x00002aaab45a4800 nid=0x141b
> waiting for monitor entry [0x0000000041930000]
>     java.lang.Thread.State: BLOCKED (on object monitor)
>          at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388)
>          - waiting to lock<0x00002abd72beb518>  (a java.net.SocksSocketImpl)
>          at java.net.ServerSocket.implAccept(ServerSocket.java:453)
>          at java.net.ServerSocket.accept(ServerSocket.java:421)
>          at
> org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
>          at
> org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
>          at java.lang.Thread.run(Thread.java:619)
>
> ""http-bio-8080"-Acceptor-0" daemon prio=10 tid=0x00002aaab48a7800 nid=0x141a
> waiting for monitor entry [0x000000004116e000]
>     java.lang.Thread.State: BLOCKED (on object monitor)
>          at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388)
>          - waiting to lock<0x00002abd72beb518>  (a java.net.SocksSocketImpl)
>          at java.net.ServerSocket.implAccept(ServerSocket.java:453)
>          at java.net.ServerSocket.accept(ServerSocket.java:421)
>          at
> org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:59)
>          at
> org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:211)
>          at java.lang.Thread.run(Thread.java:619)
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org