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 2013/12/25 11:02:36 UTC

[Bug 55930] New: the backlog attribute of http bio connector does not work

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

            Bug ID: 55930
           Summary: the backlog attribute of http bio connector does not
                    work
           Product: Tomcat 7
           Version: 7.0.47
          Hardware: PC
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Connectors
          Assignee: dev@tomcat.apache.org
          Reporter: chainhou@gmail.com

Created attachment 31153
  --> https://issues.apache.org/bugzilla/attachment.cgi?id=31153&action=edit
in war file ,the servlet named indextest will sleep 60s

Hi,
I find a bug of http bio connector,you will find it in flowing steps:

1.set tomcat connector like this:
    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000"
               redirectPort="8443" acceptCount="1" maxThreads="1"
minSpareThreads="1"/>

2. deploy attach war file:test.war

3. use LR or JMeter send 3 requests: http://localhost:8080/test/indextest 

4. use command jstack print current thread stack

NOTE: now the main thread stack like this:
"main" prio=6 tid=0x002aac00 nid=0x2e08 runnable [0x0025f000]
   java.lang.Thread.State: RUNNABLE
    at java.net.PlainSocketImpl.socketAccept(Native Method)
    at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
    - locked <0x242cbaa8> (a java.net.SocksSocketImpl)
    at java.net.ServerSocket.implAccept(ServerSocket.java:462)
    at java.net.ServerSocket.accept(ServerSocket.java:430)
    at org.apache.catalina.core.StandardServer.await(StandardServer.java:452)
    at org.apache.catalina.startup.Catalina.await(Catalina.java:779)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:725)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456)

It state is  RUNNABLE, not like xxxPark, it's not waiting for condition.

In another words, the main thread should not entering the
ServerSoccket.accept() method when the backlog works. It must reject the
request.

-- 
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


[Bug 55930] the backlog attribute of http bio connector does not work

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

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

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

--- Comment #1 from Mark Thomas <ma...@apache.org> ---
That thread has nothing to do with request handling.

If you require further explanations, please use the users mailing list.

-- 
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