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

--- Comment #4 from mardkra...@hotmail.com ---
I received more information form the author of the test, added more logging,
and am including more of the client-server log (minus a few of our custom
classes).

The test acts does the following:
1. send a new file
  a. HEAD check if already exists - 404 (Not found)
  b. PUT initial small file - 201 (Created)
2. start sending/updating 1GB file (on thread-x with a new HttpClient instance
built with same user setup)
  a. HEAD check if already exisits - 200 (OK)
  b. PUT large file
3. attempt to delete the file a few seconds after step 2 starts (on thread-y
with a new HttpClient instance built with same user setup)
  a. DELETE file

We expect (and experience with 8.0.8) that step 3 returns with 409 (Conflict)
and step 2 returns with 200 (OK).  However, we are experiencing with 8.0.9 that
step 2 gets cut off and can't complete.


----receiving server's access logs----
127.0.0.1 - - [16/Jul/2014:13:50:33 +0000] "HEAD
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 -
127.0.0.1 - - [16/Jul/2014:13:50:33 +0000] "HEAD
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 404 -
127.0.0.1 - - [16/Jul/2014:13:50:33 +0000] "PUT
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 1114
127.0.0.1 - - [16/Jul/2014:13:50:33 +0000] "PUT
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 201 -
127.0.0.1 - - [16/Jul/2014:13:50:39 +0000] "HEAD
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 -
127.0.0.1 - - [16/Jul/2014:13:50:39 +0000] "HEAD
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 200 -
127.0.0.1 - - [16/Jul/2014:13:50:51 +0000] "DELETE
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 1114
127.0.0.1 - - [16/Jul/2014:13:50:51 +0000] "DELETE
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 204 -
127.0.0.1 - - [16/Jul/2014:13:50:54 +0000] "PUT
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 1114
127.0.0.1 - - [16/Jul/2014:13:50:55 +0000] "PUT
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 1114
127.0.0.1 - - [16/Jul/2014:13:50:56 +0000] "PUT
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 1114
127.0.0.1 - - [16/Jul/2014:13:50:57 +0000] "PUT
/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd
HTTP/1.1" 401 1114


----cleint server's logs----
13:50:33.443 INFO  http-nio-8710-exec-2 Logger.info - Before request
[method=PUT;server=http://localhost:8710;uri=/application/api/file/conflictApp/files/a57f597a-bb7f-4221-8097-e4d9222c61cd?null;client=127.0.0.1]
13:50:33.625 WARN  http-nio-8710-exec-2 RestTemplate.handleResponseError - HEAD
request for
"http://localhost:8700/management/api/storage/fileManagement/article/conflictApp/a57f597a-bb7f-4221-8097-e4d9222c61cd";
resulted in 404 (Not Found); invoking error handler
13:50:33.931 INFO  http-nio-8710-exec-2 Logger.info - After request
[method=PUT;server=http://localhost:8710;uri=/application/api/file/conflictApp/files/a57f597a-bb7f-4221-8097-e4d9222c61cd?null;client=127.0.0.1]
13:50:39.184 INFO  http-nio-8710-exec-3 Logger.info - Before request
[method=PUT;server=http://localhost:8710;uri=/application/api/file/conflictApp/files/a57f597a-bb7f-4221-8097-e4d9222c61cd?null;client=127.0.0.1]
13:50:51.072 INFO  http-nio-8710-exec-4 Logger.info - Before request
[method=DELETE;server=http://localhost:8710;uri=/application/api/file/conflictApp/files/a57f597a-bb7f-4221-8097-e4d9222c61cd?null;client=127.0.0.1]
13:50:51.199 INFO  http-nio-8710-exec-4 Logger.info - After request
[method=DELETE;server=http://localhost:8710;uri=/application/api/file/conflictApp/files/a57f597a-bb7f-4221-8097-e4d9222c61cd?null;client=127.0.0.1]
13:50:55.518 INFO  http-nio-8710-exec-3 DefaultRequestDirector.tryExecute - I/O
exception (java.net.SocketException) caught when processing request to
{}->http://localhost:8700: Connection reset by peer: socket write error
13:50:55.521 INFO  http-nio-8710-exec-3 DefaultRequestDirector.tryExecute -
Retrying request to {}->http://localhost:8700
13:50:56.524 INFO  http-nio-8710-exec-3 DefaultRequestDirector.tryExecute - I/O
exception (java.net.SocketException) caught when processing request to
{}->http://localhost:8700: Connection reset by peer: socket write error
13:50:56.527 INFO  http-nio-8710-exec-3 DefaultRequestDirector.tryExecute -
Retrying request to {}->http://localhost:8700
13:50:57.530 INFO  http-nio-8710-exec-3 DefaultRequestDirector.tryExecute - I/O
exception (java.net.SocketException) caught when processing request to
{}->http://localhost:8700: Connection reset by peer: socket write error
13:50:57.533 INFO  http-nio-8710-exec-3 DefaultRequestDirector.tryExecute -
Retrying request to {}->http://localhost:8700
13:50:58.538 INFO  http-nio-8710-exec-3 Logger.info - After request
[method=PUT;server=http://localhost:8710;uri=/application/api/file/conflictApp/files/a57f597a-bb7f-4221-8097-e4d9222c61cd?null;client=127.0.0.1]
Jul 16, 2014 1:50:58 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [ourServlet] in context with path
[/application] threw exception [Request processing failed; nested exception is
org.springframework.web.client.ResourceAccessException: I/O error on PUT
request for
"http://localhost:8700/management/api/storage/article/aApp/c47a43b3-88a8-474b-a532-99efc3baa68a":
Connection reset by peer: socket write error; nested exception is
java.net.SocketException: Connection reset by peer: socket write error] with
root cause
java.net.SocketException: Connection reset by peer: socket write error    
    java.net.SocketException: Connection reset by peer: socket write error
    at java.net.SocketOutputStream.socketWrite0(Native Method)
    at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:113)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:159)
    at
org.apache.http.impl.io.AbstractSessionOutputBuffer.write(AbstractSessionOutputBuffer.java:181)
    at
org.apache.http.impl.io.ContentLengthOutputStream.write(ContentLengthOutputStream.java:115)
    at org.apache.http.entity.ByteArrayEntity.writeTo(ByteArrayEntity.java:112)
    at
org.apache.http.entity.HttpEntityWrapper.writeTo(HttpEntityWrapper.java:89)
    at
org.apache.http.impl.client.EntityEnclosingRequestWrapper$EntityWrapper.writeTo(EntityEnclosingRequestWrapper.java:108)
    at
org.apache.http.impl.entity.EntitySerializer.serialize(EntitySerializer.java:117)
    at
org.apache.http.impl.AbstractHttpClientConnection.sendRequestEntity(AbstractHttpClientConnection.java:265)
    at
org.apache.http.impl.conn.ManagedClientConnectionImpl.sendRequestEntity(ManagedClientConnectionImpl.java:203)
    at
org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:236)
    at
org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:121)
    at
org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:685)
    at
org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:487)
    at
org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
    at
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
    at
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57)
    at --custom class--
    at
org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:49)
    at
org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:510)
    at
org.springframework.web.client.RestTemplate.execute(RestTemplate.java:486)
    at
org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:437)
    at
org.springframework.web.client.RestTemplate$$FastClassBySpringCGLIB$$aa4e9ed0.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
    at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:700)
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at --custom class--
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:633)
    at
org.springframework.web.client.RestTemplate$$EnhancerBySpringCGLIB$$ecebfda9.exchange(<generated>)
    at --custom class--
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
    at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:700)
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at
org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:64)
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:633)
    at --custom class--
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at
org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
    at
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
    at
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
    at
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745)
    at
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:685)
    at
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
    at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:919)
    at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:851)
    at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
    at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:866)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
    at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
    at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:201)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
    at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:106)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
    at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
    at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
    at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:526)
    at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
    at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:655)
    at
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
    at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1566)
    at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1523)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:744)

-- 
You are receiving this mail because:
You are the assignee for the bug.

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

Reply via email to