[ 
https://issues.apache.org/jira/browse/CXF-8266?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Florian Paetz updated CXF-8266:
-------------------------------
    Description: 
We are seeing the exception reported in CXF-7664 in our load-tests. We make 
calls synchronously,too. 

We are using the IBM J9 JVM with Java 8. We made additional debug output, so we 
could see, that the failing instance was finalized in the finalizer-thread 
before we got the error.

 

Any help would be appreciated. We are trying to reproduce the problem in a 
standalone-test, but without success.

 

Caused by: java.lang.IllegalStateException: Message received on a Client that 
has been closed or destroyed.
 at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:736) 
~[cxf-core.jar:3.3.2]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1693)
 ~[cxf-rt-transports-http.jar:3.3.2]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1570)
 ~[cxf-rt-transports-http.jar:3.3.2]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1371)
 ~[cxf-rt-transports-http.jar:3.3.2]
 at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) 
~[cxf-core.jar:3.3.2]
 at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:671) 
~[cxf-rt-transports-http.jar:3.3.2]
 at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63)
 ~[cxf-core.jar:3.3.2]
 at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
 ~[cxf-core.jar:3.3.2]
 at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:539) 
~[cxf-core.jar:3.3.2]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:448) 
~[cxf-core.jar:3.3.2]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:363) 
~[cxf-core.jar:3.3.2]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:321) 
~[cxf-core.jar:3.3.2]
 at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) 
~[cxf-rt-frontend-simple.jar:3.3.2]
 at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140) 
~[cxf-rt-frontend-jaxws.jar:3.3.2]

 

 

 

  was:
After migrating to JDK 8 from JDK 6 we started seeing this exception. We make 
calls synchronously. This issue is intermittent and the occurrence seems to 
increase with the number of concurrent requests. I enabled HttpUrlConnection 
logging and I can see that the service responds with 200. We do not invoke 
destroy() in the ClientImpl class until the response is received. It seems 
something else is invoking destroy() which is nullifying the bus and causing 
this exception to be thrown. I tried upgrading to CXF version 3.0.12 but the 
same issue can be re-created. 

 

Any help would be appreciated. 

 

FINE: sun.net.www.MessageHeader@1bf1c95f13 pairs: \{null: HTTP/1.1 200 
OK}{.......}
2018-03-02 01:21:42,590 WARN [ajp-apr-1110-exec-12] (LogUtils.java:452) 
org.apache.cxf.phase.PhaseInterceptorChain - Interceptor for {http://**** has
thrown exception, unwinding now java.lang.IllegalStateException: 
IllegalStateException invoking https://**** Message received on a Client that 
has been closed or destroyed.
 at sun.reflect.GeneratedConstructorAccessor223.newInstance(Unknown Source) 
~[?:?]
 at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 ~[?:1.8.0_92]
 at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
~[?:1.8.0_92]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1359)
 ~[cxf-rt-transports-http-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1348)
 ~[cxf-rt-transports-http-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:56)
 ~[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:215) 
~[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) 
~[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:638) 
~[cxf-rt-transports-http-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
 ~[cxf-core-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
 [cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:516) 
[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:425) 
[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326) 
[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279) 
[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:299) 
[cxf-core-3.0.3.jar:3.0.3]
 at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:285) 
[cxf-core-3.0.3.jar:3.0.3]
 at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 [tomcat-coyote.jar:7.0.70]
 at java.lang.Thread.run(Thread.java:745) [?:1.8.0_92]
Caused by: java.lang.IllegalStateException: Message received on a Client that 
has been closed or destroyed.
 at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:705) 
~[cxf-core-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1638)
 ~[cxf-rt-transports-http-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1527)
 ~[cxf-rt-transports-http-3.0.3.jar:3.0.3]
 at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1330)
 ~[cxf-rt-transports-http-3.0.3.jar:3.0.3]
 ... 80 more

 

 

 


> Exception Message received on a Client that has been closed or destroyed 
> under high load
> ----------------------------------------------------------------------------------------
>
>                 Key: CXF-8266
>                 URL: https://issues.apache.org/jira/browse/CXF-8266
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 3.3.2
>            Reporter: Florian Paetz
>            Priority: Major
>
> We are seeing the exception reported in CXF-7664 in our load-tests. We make 
> calls synchronously,too. 
> We are using the IBM J9 JVM with Java 8. We made additional debug output, so 
> we could see, that the failing instance was finalized in the finalizer-thread 
> before we got the error.
>  
> Any help would be appreciated. We are trying to reproduce the problem in a 
> standalone-test, but without success.
>  
> Caused by: java.lang.IllegalStateException: Message received on a Client that 
> has been closed or destroyed.
>  at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:736) 
> ~[cxf-core.jar:3.3.2]
>  at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1693)
>  ~[cxf-rt-transports-http.jar:3.3.2]
>  at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1570)
>  ~[cxf-rt-transports-http.jar:3.3.2]
>  at 
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1371)
>  ~[cxf-rt-transports-http.jar:3.3.2]
>  at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) 
> ~[cxf-core.jar:3.3.2]
>  at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:671) 
> ~[cxf-rt-transports-http.jar:3.3.2]
>  at 
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63)
>  ~[cxf-core.jar:3.3.2]
>  at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
>  ~[cxf-core.jar:3.3.2]
>  at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:539) 
> ~[cxf-core.jar:3.3.2]
>  at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:448) 
> ~[cxf-core.jar:3.3.2]
>  at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:363) 
> ~[cxf-core.jar:3.3.2]
>  at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:321) 
> ~[cxf-core.jar:3.3.2]
>  at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) 
> ~[cxf-rt-frontend-simple.jar:3.3.2]
>  at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140) 
> ~[cxf-rt-frontend-jaxws.jar:3.3.2]
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to