I have been trying different Jetty client versions for my http client and I 
have been hitting some problems with high load (several thousands requests per 
minutes). I use 2 client selectors (setSelectors), 16384 as setInputBufferSize. 
Same number as setRequestBufferSize, setResponseBufferSize. 2024 as 
setMaxConnectionsPerDestination. setConnectBlocking set to true. For response I 
use BufferingResponseListener with 8388608 as param in constructor (8 MB).
The problems are:9.3.9.v20160517:AsynchronousCloseException2016-11-26 
23:20:06,638 [asyncCallback11] WARN  http.HttpDataAccess - Exception details: 
java.nio.channels. AsynchronousCloseException: null at org.eclipse.jetty.http2. 
client.http. HttpConnectionOverHTTP2.close( HttpConnectionOverHTTP2.java: 90) 
~[http2-http-client-transport- 9.3.14.v20161028.jar:9.3.14. v20161028] at 
org.eclipse.jetty.http2. client.http. HttpClientTransportOverHTTP2. onClose( 
HttpClientTransportOverHTTP2. java:160) ~[http2-http-client-transport- 
9.3.14.v20161028.jar:9.3.14. v20161028] at org.eclipse.jetty.http2. 
client.http. HttpClientTransportOverHTTP2$ SessionListenerPromise. onClose( 
HttpClientTransportOverHTTP2. java:216) ~[http2-http-client-transport- 
9.3.14.v20161028.jar:9.3.14. v20161028] at org.eclipse.jetty.http2. 
HTTP2Session.notifyClose( HTTP2Session.java:1061) ~[http2-common-9.3.14. 
v20161028.jar:9.3.14. v20161028] at org.eclipse.jetty.http2. 
HTTP2Session.onGoAway( HTTP2Session.java:424) ~[http2-common-9.3.14. 
v20161028.jar:9.3.14. v20161028] at org.eclipse.jetty.http2. parser.BodyParser. 
notifyGoAway(BodyParser.java: 187) ~[http2-common-9.3.14. v20161028.jar:9.3.14. 
v20161028] at org.eclipse.jetty.http2. parser.GoAwayBodyParser. 
onGoAway(GoAwayBodyParser. java:169) ~[http2-common-9.3.14. 
v20161028.jar:9.3.14. v20161028] at org.eclipse.jetty.http2. 
parser.GoAwayBodyParser.parse( GoAwayBodyParser.java:139) 
~[http2-common-9.3.14. v20161028.jar:9.3.14. v20161028] at 
org.eclipse.jetty.http2. parser.Parser.parseBody( Parser.java:182) 
~[http2-common-9.3.14. v20161028.jar:9.3.14. v20161028] at 
org.eclipse.jetty.http2. parser.Parser.parse(Parser. java:110) 
~[http2-common-9.3.14. v20161028.jar:9.3.14. v20161028] at 
org.eclipse.jetty.http2. HTTP2Connection$HTTP2Producer. 
produce(HTTP2Connection.java: 199) ~[http2-common-9.3.14. v20161028.jar:9.3.14. 
v20161028] at org.eclipse.jetty.util.thread. strategy.ProduceConsume. 
execute(ProduceConsume.java: 69) ~[jetty-util-9.3.14.v20161028. 
jar:9.3.14.v20161028] at org.eclipse.jetty.http2. HTTP2Connection.onFillable( 
HTTP2Connection.java:110) ~[http2-common-9.3.14. v20161028.jar:9.3.14. 
v20161028] at org.eclipse.jetty.http2. HTTP2Connection$FillCallback. 
succeeded(HTTP2Connection. java:251) ~[http2-common-9.3.14. 
v20161028.jar:9.3.14. v20161028] at org.eclipse.jetty.io. 
FillInterest.fillable( FillInterest.java:95) ~[jetty-io-9.3.14.v20161028. 
jar:9.3.14.v20161028] at org.eclipse.jetty.io.ssl. SslConnection.onFillable( 
SslConnection.java:202) ~[jetty-io-9.3.14.v20161028. jar:9.3.14.v20161028] at 
org.eclipse.jetty.io. AbstractConnection$ ReadCallback.succeeded( 
AbstractConnection.java:273) ~[jetty-io-9.3.14.v20161028. jar:9.3.14.v20161028] 
at org.eclipse.jetty.io. FillInterest.fillable( FillInterest.java:95) 
~[jetty-io-9.3.14.v20161028. jar:9.3.14.v20161028] at org.eclipse.jetty.io. 
SelectChannelEndPoint$2.run( SelectChannelEndPoint.java:93) 
~[jetty-io-9.3.14.v20161028. jar:9.3.14.v20161028] at 
org.eclipse.jetty.util.thread. strategy. ExecuteProduceConsume. 
executeProduceConsume( ExecuteProduceConsume.java: 303) 
~[jetty-util-9.3.14.v20161028. jar:9.3.14.v20161028] at 
org.eclipse.jetty.util.thread. strategy. ExecuteProduceConsume. produceConsume( 
ExecuteProduceConsume.java: 148) ~[jetty-util-9.3.14.v20161028. 
jar:9.3.14.v20161028] at org.eclipse.jetty.util.thread. strategy. 
ExecuteProduceConsume.run( ExecuteProduceConsume.java: 136) 
~[jetty-util-9.3.14.v20161028. jar:9.3.14.v20161028] at 
org.eclipse.jetty.util.thread. QueuedThreadPool.runJob( 
QueuedThreadPool.java:671) ~[jetty-util-9.3.14.v20161028. jar:9.3.14.v20161028] 
at org.eclipse.jetty.util.thread. QueuedThreadPool$2.run( 
QueuedThreadPool.java:589) ~[jetty-util-9.3.14.v20161028. jar:9.3.14.v20161028]
9.3.10.v20160621 , 9.3.11.v20160721 - same
9.3.12.v20160915 - onComplete callback of  BufferingResponseListener is called 
more than once.
9.3.13.v20161014 - AsynchronousCloseException, as previous versions.And in 
addition something new2016-11-26 23:21:50,672 [asyncCallback10] WARN  
http.HttpDataAccess - Exception details: java.lang. 
ArrayIndexOutOfBoundsException : 16384 at org.eclipse.jetty.http2.hpack. 
Huffman.encode(Huffman.java: 466) ~[http2-hpack-9.3.13. v20161014.jar:9.3.13. 
v20161014] at org.eclipse.jetty.http2.hpack. Huffman.encode(Huffman.java: 414) 
~[http2-hpack-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2.hpack. HpackEncoder.encodeValue( HpackEncoder.java:370) 
~[http2-hpack-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2.hpack. HpackEncoder.encode( HpackEncoder.java:325) 
~[http2-hpack-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2.hpack. HpackEncoder.encode( HpackEncoder.java:165) 
~[http2-hpack-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2. generator.HeadersGenerator. generateHeaders( 
HeadersGenerator.java:72) ~[http2-common-9.3.13. v20161014.jar:9.3.13. 
v20161014] at org.eclipse.jetty.http2. generator.HeadersGenerator. 
generate(HeadersGenerator. java:56) ~[http2-common-9.3.13. 
v20161014.jar:9.3.13. v20161014] at org.eclipse.jetty.http2. 
generator.Generator.control( Generator.java:80) ~[http2-common-9.3.13. 
v20161014.jar:9.3.13. v20161014] at org.eclipse.jetty.http2. 
HTTP2Session$ControlEntry. generate(HTTP2Session.java: 1122) 
~[http2-common-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2. HTTP2Flusher.process( HTTP2Flusher.java:231) 
~[http2-common-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.util. IteratingCallback.processing( 
IteratingCallback.java:241) ~[jetty-util-9.3.13.v20161014. 
jar:9.3.13.v20161014] at org.eclipse.jetty.util. IteratingCallback.iterate( 
IteratingCallback.java:224) ~[jetty-util-9.3.13.v20161014. 
jar:9.3.13.v20161014] at org.eclipse.jetty.http2. HTTP2Session.newStream( 
HTTP2Session.java:496) ~[http2-common-9.3.13. v20161014.jar:9.3.13. v20161014] 
at org.eclipse.jetty.http2. client.http. HttpSenderOverHTTP2. sendHeaders( 
HttpSenderOverHTTP2.java:87) ~[http2-http-client-transport- 
9.3.13.v20161014.jar:9.3.13. v20161014] at org.eclipse.jetty.client. 
HttpSender.send(HttpSender. java:204) ~[jetty-client-9.3.13. 
v20161014.jar:9.3.13. v20161014] at org.eclipse.jetty.http2. client.http. 
HttpChannelOverHTTP2.send( HttpChannelOverHTTP2.java:87) 
~[http2-http-client-transport- 9.3.13.v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.client. HttpConnection.send( HttpConnection.java:207) 
~[jetty-client-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2. client.http. HttpConnectionOverHTTP2.send( 
HttpConnectionOverHTTP2.java: 64) ~[http2-http-client-transport- 
9.3.13.v20161014.jar:9.3.13. v20161014] at org.eclipse.jetty.http2. 
client.http. HttpDestinationOverHTTP2.send( HttpDestinationOverHTTP2.java: 37) 
~[http2-http-client-transport- 9.3.13.v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.http2. client.http. HttpDestinationOverHTTP2.send( 
HttpDestinationOverHTTP2.java: 27) ~[http2-http-client-transport- 
9.3.13.v20161014.jar:9.3.13. v20161014] at org.eclipse.jetty.client. 
MultiplexHttpDestination. process( MultiplexHttpDestination.java: 143) 
~[jetty-client-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.client. MultiplexHttpDestination.send( 
MultiplexHttpDestination.java: 72) ~[jetty-client-9.3.13. v20161014.jar:9.3.13. 
v20161014] at org.eclipse.jetty.client. HttpDestination.send( 
HttpDestination.java:202) ~[jetty-client-9.3.13. v20161014.jar:9.3.13. 
v20161014] at org.eclipse.jetty.client. HttpClient.send(HttpClient. java:540) 
~[jetty-client-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.client. HttpRequest.send(HttpRequest. java:693) 
~[jetty-client-9.3.13. v20161014.jar:9.3.13. v20161014] at 
org.eclipse.jetty.client. HttpRequest.send(HttpRequest. java:677) 
~[jetty-client-9.3.13. v20161014.jar:9.3.13. v20161014]
9.3.14.v20161028 - AsynchronousCloseException

Do you have any advice why my clients gets those GO_AWAY message leading to 
AsynchronousCloseException? This is the main issue. It doesn't happen all the 
time but still a substantial number of requests Maxim
_______________________________________________
jetty-users mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to