I've noticed when I start the server afresh, it fails after about 100
requests.  When curl/wget sends their requests, they force an
authentication request against google's ClientLogin service.  These
client requests seem to be closed on mass after 60s timeout (or more).
 Meanwhile, somehow it looks like the 101th request cannot connect
within the 60s timeout.

Here is a relatively long snippet of my log file from this test when I
turn on FINE logs.  You'll see an exception at the end that generates
the 1001 status code:

FINE: Connection to www.google.com/72.14.204.103:443 is now closed
Sep 27, 2011 5:03:46 AM org.restlet.engine.connector.Connection onTimeOut
FINE: Closing connection with "www.google.com/72.14.204.99:443" due to
lack of activity during 60000 ms
Sep 27, 2011 5:03:46 AM org.restlet.engine.connector.Connection close
FINE: Connection to www.google.com/72.14.204.99:443 is now closed
Sep 27, 2011 5:03:47 AM org.restlet.engine.connector.Connection onTimeOut
FINE: Closing connection with "www.google.com/72.14.204.99:443" due to
lack of activity during 60000 ms
Sep 27, 2011 5:03:47 AM org.restlet.engine.connector.Connection close
FINE: Connection to www.google.com/72.14.204.99:443 is now closed
Sep 27, 2011 5:03:48 AM org.restlet.engine.connector.Connection onTimeOut
FINE: Closing connection with "www.google.com/72.14.204.99:443" due to
lack of activity during 60000 ms
Sep 27, 2011 5:03:48 AM org.restlet.engine.connector.Connection close
FINE: Connection to www.google.com/72.14.204.99:443 is now closed
Sep 27, 2011 5:03:49 AM org.restlet.engine.connector.Connection onTimeOut
FINE: Closing connection with "www.google.com/72.14.204.99:443" due to
lack of activity during 60000 ms
Sep 27, 2011 5:03:49 AM org.restlet.engine.connector.Connection close
FINE: Connection to www.google.com/72.14.204.99:443 is now closed
Sep 27, 2011 5:03:57 AM org.restlet.engine.log.LogFilter beforeHandle
FINE: Processing request to: "https://app.milowski.com/test/collections/";
Sep 27, 2011 5:03:57 AM org.restlet.engine.component.ServerRouter logRoute
FINE: Virtual host selected: ".*", "app.milowski.com", "443"
Sep 27, 2011 5:03:57 AM org.restlet.engine.component.HostRoute beforeHandle
FINE: Base URI: "https://app.milowski.com";. Remaining part: "/test/collections/"
Sep 27, 2011 5:03:57 AM org.restlet.routing.Router logRoute
FINE: Selected route: "" -> org.atomojo.www.apps.login.IdentityFilter@205ddb6e
Sep 27, 2011 5:03:57 AM org.atomojo.www.apps.login.IdentityFilter beforeHandle
FINE: No I cookie.
Sep 27, 2011 5:03:57 AM org.atomojo.www.apps.login.LoginAction login
INFO: Performing google auth for ale...@milowski.com
Sep 27, 2011 5:03:57 AM org.restlet.engine.component.ClientRouter logRoute
FINE: This client was selected: "[HTTPS/1.1]"
Sep 27, 2011 5:03:57 AM
org.restlet.engine.connector.ClientConnectionHelper handle
FINE: Handling client request: POST
https://www.google.com/accounts/ClientLogin HTTPS/1.1
Sep 27, 2011 5:03:57 AM
org.restlet.engine.connector.ClientConnectionHelper doHandleOutbound
FINE: Client request to be sent: POST
https://www.google.com/accounts/ClientLogin HTTPS/1.1
Sep 27, 2011 5:03:57 AM
org.restlet.engine.connector.ClientConnectionHelper getBestConnection
FINE: Creating a new client connection to: www.google.com/72.14.204.147:443
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay writeLine
FINE: Writing message to www.google.com/72.14.204.147:443
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: POST /accounts/ClientLogin HTTP/1.1
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: Date: Tue, 27 Sep 2011 12:03:57 GMT
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: Content-Length: 110
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: Accept: */*
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: Host: www.google.com
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE: User-Agent: Restlet-Framework/2.1m7
Sep 27, 2011 5:03:57 AM org.restlet.engine.connector.OutboundWay onFill
FINE:
Sep 27, 2011 5:04:57 AM org.restlet.engine.connector.Connection onTimeOut
FINE: Closing connection with "www.google.com/72.14.204.147:443" due
to lack of activity during 60000 ms
Sep 27, 2011 5:04:57 AM org.restlet.engine.connector.Connection close
FINE: Unable to properly shutdown socket
java.net.SocketException: Transport endpoint is not connected
        at sun.nio.ch.SocketChannelImpl.shutdown(Native Method)
        at 
sun.nio.ch.SocketChannelImpl.shutdownInput(SocketChannelImpl.java:658)
        at sun.nio.ch.SocketAdaptor.shutdownInput(SocketAdaptor.java:378)
        at org.restlet.engine.connector.Connection.shutdown(Connection.java:706)
        at 
org.restlet.ext.ssl.internal.SslConnection.shutdown(SslConnection.java:509)
        at org.restlet.engine.connector.Connection.close(Connection.java:174)
        at 
org.restlet.engine.connector.Connection.onTimeOut(Connection.java:617)
        at 
org.restlet.engine.connector.ConnectionController.controlConnections(ConnectionController.java:93)
        at 
org.restlet.engine.connector.ConnectionController.doRun(ConnectionController.java:146)
        at org.restlet.engine.connector.Controller.run(Controller.java:155)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:636)
Sep 27, 2011 5:04:57 AM org.restlet.engine.connector.Connection close
FINE: Connection to www.google.com/72.14.204.147:443 is now closed
Sep 27, 2011 5:04:57 AM org.atomojo.www.apps.login.LoginAction login
INFO: Authorization request for {...} returned: 1001

Any ideas?  I'm going to try aborting the response once I've got the
authentication response to see what happens.

--Alex Milowski

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=2846630

Reply via email to