Simone Bordet
088dc036b4
Fixes #752 - Implement support for HTTP2 SETTINGS_MAX_HEADER_LIST_SIZE.
2016-07-21 19:12:10 +02:00
Simone Bordet
6a15bbfb2b
Issue #751 - Remove usages of ArrayQueue.
2016-07-21 17:55:48 +02:00
Simone Bordet
78d27c9a28
Fixes #755 - NPE in HttpChannelOverHTTP2.requestContent().
...
Fixed by recycling only channels that have completed normally by
having read the request content and responded.
Channels that don't read the request content won't be recycled, thus
avoiding the NPE.
2016-07-21 17:43:14 +02:00
Greg Wilkins
2db91a88cf
HTTP2 SETTINGS_MAX_HEADER_LIST_SIZE #752
2016-07-21 12:28:32 +10:00
Greg Wilkins
2f4a6f29b7
Do not use ArrayQueue for HPACK #751
2016-07-21 11:07:55 +10:00
Simone Bordet
766e5ab2ae
Fixes #739 - Illegal WindowUpdate frame with delta=0.
...
Using compareAndSet() rather than getAndSet().
2016-07-19 10:33:43 +02:00
Simone Bordet
a3b5e7ebb7
Added guards against NPE in case HttpField.getValue() returns null.
2016-07-15 15:45:50 +02:00
Simone Bordet
389eb68c3c
Code cleanups.
2016-07-15 15:45:50 +02:00
Greg Wilkins
45ead1bb29
jetty http2 client parse error #726
2016-07-15 13:47:41 +10:00
Simone Bordet
7172127236
Fixes #694 - http2.client.StreamResetTest.testServerExceptionConsumesQueuedData stack not suppressed in test
2016-07-14 16:18:55 +02:00
Simone Bordet
2387d973ec
Made test more robust on slower machines.
2016-07-14 12:43:33 +02:00
Greg Wilkins
34a9e43c50
restored long test timer
2016-07-14 15:17:50 +10:00
Simone Bordet
811549a06b
Made test more robust on slower machines.
2016-07-13 20:06:42 +02:00
Greg Wilkins
cb42ffc706
improved test timeouts
2016-07-13 15:23:46 +10:00
Greg Wilkins
4055146dcd
Fix #671 Incorrect default SLPN protocol
2016-07-13 11:09:53 +10:00
Jesse McConnell
ae931538ab
[maven-release-plugin] prepare for next development iteration
2016-06-22 13:59:10 -05:00
Jesse McConnell
df1ed4fb03
[maven-release-plugin] prepare release jetty-9.3.11.M0
2016-06-22 13:59:06 -05:00
Jesse McConnell
030ec61837
[maven-release-plugin] prepare for next development iteration
2016-06-22 09:14:25 -05:00
Jesse McConnell
9a4cb41122
[maven-release-plugin] prepare release jetty-9.3.11.M0
2016-06-22 09:14:21 -05:00
Jesse McConnell
e7034117ea
[maven-release-plugin] prepare for next development iteration
2016-06-21 08:50:13 -05:00
Jesse McConnell
16c435c69d
[maven-release-plugin] prepare release jetty-9.3.10.v20160621
2016-06-21 08:50:09 -05:00
Simone Bordet
442a7ce8cc
Improved logging.
2016-06-20 23:10:44 +02:00
Simone Bordet
fdd1cd1e94
Fixes #647 - HTTP/2 CONTINUATION frame parsing throws IllegalStateException.
...
Added the missing "break" statement.
2016-06-17 11:53:58 +02:00
Simone Bordet
9d9f68da08
Reduced logging level for MAX_HEADER_LIST_SIZE.
2016-06-17 10:25:45 +02:00
Simone Bordet
f3a805887e
Fixes #542 - Support Connection.Listener bean on clients.
...
Introduced ClientConnectionFactory.customize() to look for
Connection.Listener beans.
ClientConnectionFactory implementation calls customize() when they
create a Connection instance, so the Connection.Listener beans are
registered onto the Connection.
2016-05-25 19:27:08 +02:00
Simone Bordet
f6098497c0
Explicitly setting the EndPoint idle timeout in case
...
HttpClient.idleTimeout has changed after start().
2016-05-25 19:27:08 +02:00
Simone Bordet
6bf3607444
Fixed toString() NPE in case the stream is null.
2016-05-25 19:27:08 +02:00
Simone Bordet
ddddc3a675
Fixes #574 - Introduce a TLS handshake completed listener.
...
Introduced class SslHandshakeListener that can be registered as a
bean in both the ServerConnector and in clients such as HttpClient
and HTTP2Client.
When creating SslConnection instances, the factory will query the
connector (client or server) for SslHandshakeListener beans and, if
present, will be added to the SslConnection.
2016-05-24 16:09:19 +02:00
Simone Bordet
d73c60db14
Issue #464 - Improve reporting of SSLHandshakeException.
2016-05-24 11:15:18 +02:00
Simone Bordet
c8c74da50a
Issue #581 - Initial session recv window setting not working.
...
Updating the local session receive window before sending it to the client.
2016-05-20 11:17:50 +02:00
Simone Bordet
d55aaa4a0c
Improved logging.
2016-05-20 01:12:24 +02:00
Jesse McConnell
dc4574f380
[maven-release-plugin] prepare for next development iteration
2016-05-17 17:30:17 -05:00
Jesse McConnell
0bbebec1e0
[maven-release-plugin] prepare release jetty-9.3.9.v20160517
2016-05-17 17:30:13 -05:00
Simone Bordet
dee3331ffb
Issue #572 - Don't reject HTTP/2 requests without body in low threads mode.
...
* Made ProduceExecuteConsume the default ExecutionFactory for HTTP/2.
* Made the HTTP/2 fillable callback non-blocking.
* Introduced configuration for the server initial session recv window.
* Sending a WINDOW_UPDATE frame at session setup to inform the client
about the server session recv window.
2016-05-16 15:01:08 +02:00
Simone Bordet
67ea8db5aa
Always copy the request metadata.
...
This is necessary because the HTTP/1.1 machinery will recycle the
Metadata.Request object, and it may race with a thread dispatch to
the HTTP/2 machinery that will handle the request.
2016-05-16 15:01:08 +02:00
Simone Bordet
242b6b5f66
Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'.
2016-05-12 18:59:40 +02:00
Simone Bordet
016fc6569f
Fixes #558 - HTTP/2 server hangs when thread pool is low on threads.
...
Modified ExecuteProduceConsume to test for Rejectable tasks when
trying to execute a task in low threads mode, and if so, reject them
immediately.
2016-05-12 00:13:35 +02:00
Simone Bordet
1fc40864e1
Issue #558 (HTTP/2 server hangs when thread pool is low on threads).
...
Verify that rejecting tasks avoids hanging the server when in low
threads mode.
2016-05-11 13:05:16 +02:00
Simone Bordet
8ac23d187a
Added tests to verify input data consumption.
...
Verify that input data is consumed at the end of a request handling,
either when input is not read and when an exception is thrown,
to make sure that the session flow control is not stalled.
2016-05-11 13:05:16 +02:00
Simone Bordet
c14833a7f1
Fixes #552 (Improve HTTP/2 idle timeout handling)
...
Made sure that the stream idle timeout is reset for every stream read
and write.
Made sure that both the stream and the session idle timeouta are reset
for buffered data reads.
2016-05-07 14:45:34 +02:00
Simone Bordet
6827c5b045
Fixes #514 - Allow ExecutionStrategy to be configurable.
...
Introduced setters and constructor parameters to components that use
ExecutionStrategy.
2016-04-14 12:20:31 +02:00
Joakim Erdfelt
6fb338e50d
Updating to version 9.3.9-SNAPSHOT
2016-04-11 16:20:50 -07:00
Joakim Erdfelt
bb4f3c4882
Updating to version 9.3.9.M1
2016-04-11 15:35:22 -07:00
Simone Bordet
f0a1ccf4d3
Fixes #504 - HTTP/2 client transport cannot send request after idle timeout.
...
Made sure that the idle timeout mechanism notifies the destination
that the connection will close.
Also reviewed the close protocol to be: notify destination, then abort,
then close. In this way, HTTP/2 can send RST_STREAM before the
connection is closed.
2016-04-11 19:15:17 +02:00
Simone Bordet
5c3e068cb3
Fixes #481 - Event response.success notified without waiting for content callback for HTTP/2 transport.
...
Improved fix, notifying the response.success event using a
CompletableCallback to avoid that HttpReceiver.responseContent()
fails the update from ResponseState.TRANSIENT.
2016-04-11 12:55:37 +02:00
Simone Bordet
5c147288ef
Fixes #481 - Event response.success notified without waiting for content callback for HTTP/2 transport.
...
Fixed by notifying the response.success event only when the callback
is succeeded.
2016-04-04 15:40:25 +02:00
Simone Bordet
4f68d44a50
Fixes #477 - HTTP/2 client transport must not send absolute-form :path pseudo-header.
...
Reducing the target to a path if it is in absolute-form.
2016-04-01 19:16:52 +02:00
Simone Bordet
ce04cadb79
Fixes #233 - Add message to idle TimeoutException.
2016-04-01 14:44:26 +02:00
Greg Wilkins
8b228073e3
Issue #448 - RFC2616 Compliance Mode should track and report RFC7230 violations
...
Efficiency improvements
2016-03-24 11:37:39 +11:00
Simone Bordet
0e0edbb6db
Fixes #441 (Simplify direct HTTP/2 over TLS HttpClient usage)
...
Added useALPN property to HttpClientTransportOverHTTP2 to disable
usage of ALPN and therefore allow direct HTTP/2 over TLS.
2016-03-18 10:49:03 +01:00