Greg Wilkins
66ce47923e
Issue #572 Ignore failing test pending further analysis
2016-06-03 09:08:44 +10:00
Greg Wilkins
98c328fb23
Jetty 9.4.x 572 ( #614 )
...
* Issue #572 Scheduling Strategy Deadlocks
Implemented dual strategy idea from #572 discussion
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* fixed http2 strategy choice
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* code cleanups
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* clean up seelctor actions/products
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* cleanups
2016-06-03 09:07:00 +10:00
Simone Bordet
b912c700ee
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2016-05-25 19:27:46 +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
016a7b72a1
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2016-05-24 16:10:00 +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
b879b58909
Removed @Ignore from test.
2016-05-20 11:20:29 +02:00
Simone Bordet
ee11e65a8a
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2016-05-20 11:18:23 +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
54ae36f8f1
Temporarily ignoring test.
...
The test fails because it hangs on session flow control window
exhaustion. Setting the session flow control window to large values
makes the test fail in a different way. Needs review.
2016-05-20 01:21:36 +02:00
Simone Bordet
2a4cbdd111
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2016-05-12 00:22:31 +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
d8961139f3
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2016-05-11 13:57:08 +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
19c63703ea
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2016-05-07 14:50:56 +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
a37fdcd0e2
Fixes #514 - Allow ExecutionStrategy to be configurable.
...
Introduced setters and constructor parameters to components that use
ExecutionStrategy.
2016-04-14 12:28:52 +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
Greg Wilkins
d1fc5eb67d
Revert "Issue #346 HttpParser RFC2616 Compliance mode"
...
This reverts commit 58e5a54ab6
.
RFC7430 allows empty header values
2016-03-05 11:03:32 +01:00
Greg Wilkins
58e5a54ab6
Issue #346 HttpParser RFC2616 Compliance mode
...
Ignore headers without values.
2016-03-05 11:03:11 +01:00
Simone Bordet
bd62320285
Issue #360 (Improve HTTP/2 stream interleaving)
...
Fixed by making the interleave quantum be the frame size rather than
the flow control window size.
Reworked HTTP2Flusher.process() to be simpler and properly
interleave frames.
2016-02-29 18:45:30 +01:00
Simone Bordet
2c11372bc4
Merged branch 'jetty-9.3.x' into 'master'.
2016-02-29 17:17:09 +01:00
Simone Bordet
cec3694355
Consistently using BufferUtil, especially clearToFill() and
...
flipToFlush().
2016-02-29 16:31:38 +01:00
Simone Bordet
b8fcc5112f
Issue #372 (Data race in HttpReceiverOverHTTP2)
...
Fixed implementations of onData() to properly complete the callback
and to copy the data if they use it asynchronously.
2016-02-29 14:39:27 +01:00
Simone Bordet
f727e2bac3
Merged branch 'jetty9.3.x' into 'master'.
2016-02-13 11:32:53 +01:00
Simone Bordet
0eef227e84
487750 - HTTP/2 push must not be recursive.
...
Avoid recursive pushes by pushing the whole resource tree on the
primary request, and avoid pushes for synthetic requests generated by
the pushes.
2016-02-13 11:15:58 +01:00
Joakim Erdfelt
ac24196b0d
Happy New Year 2016
2016-01-04 14:34:20 -07:00
Joakim Erdfelt
cd39fd84fe
Happy New Year 2016
2016-01-04 14:31:22 -07:00
Simone Bordet
c66a4d5aa7
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-24 10:47:10 +01:00
Simone Bordet
30694b675b
484876 - Make simpler to customize the FlowControlStrategy.
...
Introduced FlowControlStrategy.Factory along with getters and setters
in relevant classes.
2015-12-24 10:32:36 +01:00
Simone Bordet
8045b0cf67
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-23 16:21:53 +01:00
Simone Bordet
7a33efdf66
484861 - Improve FlowControlStrategy stall handling.
...
Changed the way on[Session|Stream]Stalled() is notified.
Instead that from within the HTTP2Flusher, those methods are now
called from onDataSending(), invoking them only once per stall.
2015-12-23 15:42:25 +01:00
Simone Bordet
802948259e
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-23 11:26:11 +01:00
Simone Bordet
a5983c560a
Avoid allocating the ALPNClientConnectionFactory if there is no
...
SslContextFactory.
2015-12-23 11:20:19 +01:00
Simone Bordet
14a3b2eab2
484818 - Expose interesting HTTP/2 attributes and operations via JMX.
...
Initial work to expose already existing attributes on the client.
2015-12-23 11:08:25 +01:00
Simone Bordet
b7ab9e0a22
484818 - Expose interesting HTTP/2 attributes and operations via JMX.
...
Initial work to expose already existing attributes on the server.
2015-12-23 11:08:25 +01:00
Simone Bordet
ca6eaafdbf
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-15 15:42:36 +01:00
Simone Bordet
717fc7819d
484262 - Race condition between GOAWAY disconnect and ability to make new request.
...
Fixed by making sure that when a peer received a GOAWAY frame, it
does not also notify the onFailure() callback.
2015-12-15 15:35:04 +01:00
Simone Bordet
50041395f9
Merged branch 'jetty-9.3.x' into 'master'.
2015-11-25 14:00:19 +01:00
Simone Bordet
3c54806d47
482959 - Local stream count never decrements when closing a stream causing IllegalStateException.
...
This issue was caused by removeStream(IStream, boolean) to take a
boolean parameter that indicated whether the close of the stream was
caused by a sent frame (local) or by a received frame (remote).
However, this was wrong, since a local stream may be closed by
receiving a frame. This error was causing the local and remote stream
counts held by HTTP2Session to be decremented wrongly, causing the
IllegalStateException mentioned in the bug report.
Fixed by decrementing the stream counters based on whether the stream
itself is local or remote.
2015-11-25 12:58:02 +01:00
Simone Bordet
279e56d336
481718 - Improve stream interleaving.
...
Introduced the constraint in the API that Stream.headers() and
Stream.data() calls cannot be invoked if the previous operation did
not complete.
Improved interleaving by appending unfinished DATA frames at the end
of the queue, rather than prepending them.
2015-11-09 21:58:48 +01:00
Greg Wilkins
7843b7348e
480827 Implemented Unix Domain Socket Connector
...
Squashed commit of the following:
commit fbb680ba7cdb73495524ea9e5b0f49caee7f68d8
Merge: ed2550b 64ea0db
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Nov 6 10:44:00 2015 +1100
Merge branch 'master' into unix-socket
commit ed2550b50f978e1984e19fbda642baf450dbe6a1
Merge: 88d7b35 de137ab
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Nov 5 18:41:25 2015 +1100
Merge branch 'master' into unix-socket
commit 88d7b35f885de2da7dec836e6e4ae2b522d517f0
Merge: 7d4155f 3e2658a
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Nov 5 17:38:27 2015 +1100
Merge branch 'master' into unix-socket
commit 7d4155fe4a407d493683b66709bc638879b0b422
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Nov 5 17:24:48 2015 +1100
Unix socket configuration
commit 2737b19f73ad153c20e1762874558a5d62849f90
Merge: cd0cc2e 92cc44c
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Nov 4 15:13:40 2015 +1100
Merge branch 'master' into unix-socket
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/SecureRequestCustomizer.java
commit cd0cc2ef36a558d948bf26aff4f9e3519da2f823
Merge: 639753b 303f98e
Author: Greg Wilkins <gregw@webtide.com>
Date: Mon Nov 2 12:21:19 2015 +1100
Merge branch 'master' into unix-socket
commit 639753b5ed37778d7231acfe9d52039aed66351e
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 15:42:58 2015 +1100
local connectors report NOIP address
commit 6d38c4195f145b99f775a06d546960b119094b0c
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 12:11:13 2015 +1100
Gentler ssl close test
commit 40b46b66a738c9187f859d522a0165bb09b113c8
Merge: b7eb082 fa53b11
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 11:09:42 2015 +1100
Merge branch 'master' into unix-socket
commit b7eb082be44864c058b6f01b10364013596d3650
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 30 08:34:30 2015 +1100
SecureRequestCustomizer for UnixSockets
commit edbb3c080200b4c6aa2836eff6c81bf31a73a8c1
Merge: 90e8cc0 de7ac72
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 29 19:47:05 2015 +1100
Merge branch 'master' into unix-socket
commit 90e8cc060ff6dc4b249818db38334ffa543f002f
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 29 19:31:50 2015 +1100
use proxy connection
commit b1772ef5dcac9ddf9bb5ecda1cda6d038ca21755
Merge: e95a932 9fe7332
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 29 16:46:29 2015 +1100
Merge branch 'master' into unix-socket
commit e95a932bda5a96bf98ada4fb47664790af2aa0a2
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Oct 28 15:58:25 2015 +1100
fixed config
commit f8963b2ed6b6b4b96f1d9403194c9d50ab1f12fd
Merge: 9c56b53 8b27484
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Oct 28 15:34:28 2015 +1100
Merge branch 'master' into unix-socket
commit 9c56b53cbec20d98e5cb05cf8d1f668fe84b95e0
Merge: 298a311 39768f8
Author: Greg Wilkins <gregw@webtide.com>
Date: Mon Oct 26 13:04:34 2015 +1100
Merge branch 'master' into unix-socket
commit 298a311af952ad3ef5d1c7635deabf47bddaa1c6
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 15:24:19 2015 +1100
Async accepting
commit 8266753d124c04ec8bca8aa02be1ef3d826d6769
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 14:45:35 2015 +1100
set acceptors
commit 6a56c5b9e19063fcb95cdc1228adf723c0d41362
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 11:44:54 2015 +1100
licence
commit d80e5748e6c4327bae57de2af01983990dd2afe0
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 11:24:14 2015 +1100
unixsocket work in progress adding modules
commit cf0c1153d9966cc7182ba29411527b4341c34da6
Merge: 645b671 c39bfa2
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 08:52:01 2015 +1100
Merge branch 'master' into unix-socket
commit 645b6712d37282c26011a95c8c98e45c249b2e5f
Author: Greg Wilkins <gregw@webtide.com>
Date: Fri Oct 23 08:49:52 2015 +1100
IP headers
commit 67b210b9ea81af68ce3848a114bbbd1b80a8ca52
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 22 23:48:57 2015 +1100
working with haproxy
commit e4fce9cf5d896a9a29a7c6280fcaa0336dfcc0f2
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 22 18:25:09 2015 +1100
unixsocket working
commit 6f013788cad44e6641cd89720c5e7f3652cdc257
Author: Greg Wilkins <gregw@webtide.com>
Date: Thu Oct 22 15:39:55 2015 +1100
work in progress
2015-11-06 11:17:46 +11:00
Simone Bordet
5062756135
Merged branch 'jetty-9.3.x' into 'master'.
2015-11-02 12:17:00 +01:00
Simone Bordet
58027a3421
481225 - Secondary resources with query parameters are not properly pushed.
...
Fixed by making PushCacheFilter remember the query parameters for
secondary resources, so that the PUSH_PROMISE frame can be correctly
generated with the query parameters.
2015-11-02 11:37:17 +01:00
Greg Wilkins
9fe7332413
Implemented v2 of the ProxyConnection protocol
2015-10-29 16:45:50 +11:00
Simone Bordet
3c26ffb227
480061 - HTTP/2 server doesn't send GOAWAY frame when shutting down.
...
Fixed by overriding Connection.close() and sending the GOAWAY from
there, which is triggered when the SelectorManager stops.
This allowed simplification of client code too.
2015-10-19 12:18:01 +02:00
Simone Bordet
ccbd626cb2
479537 - Server preface sent after client preface reply.
...
Fixed by anticipating the onPreface() callback on server before
processing the client preface's SETTINGS frame.
2015-10-12 18:36:53 +02:00
Simone Bordet
0ca40b59c6
479277 - HttpClient with HTTP/2 transport does not work for "https" URLs.
...
Fixed by reworking how ClientConnectionFactories are handled by both
HTTP2Client and by HttpClientTransportOverHTTP2, to avoid that the
latter wraps the nested factories with SslConnection twice.
2015-10-07 21:39:02 +02:00
Simone Bordet
0c9eba0485
478275 - Priority information in HEADERS frame is not sent.
...
Now the priority information present in HEADERS frame is correctly
generated and sent as part of the HEADERS frame.
2015-09-25 13:00:26 +02:00