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
bf757aafa9
484818 - Expose interesting HTTP/2 attributes and operations via JMX.
...
Added flow control stall times and improved dump().
2016-01-04 13:06:24 +01:00
Simone Bordet
fdadc942e9
484818 - Expose interesting HTTP/2 attributes and operations via JMX.
...
Added flow control stall times and improved dump().
2015-12-28 14:30:24 +01:00
Simone Bordet
7b713507c6
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-24 12:37:05 +01:00
Simone Bordet
997b868ecd
484878 - Make BufferingFlowControlStrategy.bufferRatio configurable via JMX.
...
Made the property writable.
2015-12-24 12:10:20 +01:00
Simone Bordet
c66a4d5aa7
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-24 10:47:10 +01:00
Simone Bordet
7598062bbb
Improved logging.
2015-12-24 10:36:17 +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
59680d47d3
484818 - Expose interesting HTTP/2 attributes and operations via JMX.
...
Exposed number of session stalls.
2015-12-23 16:19:08 +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
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
3fb354f884
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-21 13:02:04 +01:00
Simone Bordet
8f4cc73613
484585 - Avoid sending request using a connection that is idle timing out.
...
Rewritten handling of idle timeouts in light of issue #484718 .
2015-12-21 11:47:05 +01:00
Simone Bordet
988e596c71
484585 - Avoid sending request using a connection that is idle timing out.
...
Added guard to avoid that the idle timeout expires just before
sending the request.
Reworked the way idle timeouts are handled, to support the case where
the idle timeout just expired and the request can be tried on a
different connection/channel.
2015-12-18 15:56:31 +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
d4d9ceea86
Improved toString().
2015-12-15 14:11:56 +01:00
Simone Bordet
fc4aacc38a
Merged branch 'jetty-9.3.x' into 'master'.
2015-12-09 11:57:38 +01:00
Simone Bordet
e7d8980952
Improved generate/parse tests.
2015-12-09 11:56:49 +01:00
Simone Bordet
35da4a3c54
483878 - Parallel requests stuck via the http client transport over HTTP/2.
...
Fixed by recycling correctly the blockBuffer.
2015-12-09 11:56:26 +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
f596bf1566
Improved javadocs for onPreface().
2015-11-25 12:58:02 +01:00
Simone Bordet
65d33f8b49
Merged branch 'jetty-9.3.x' into 'master'.
2015-11-18 21:40:51 +01:00
Simone Bordet
793c816c66
Improved logging.
2015-11-18 19:25:34 +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
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
64ba5a6ef8
Improved usability of PingFrame.
2015-09-27 17:03:29 +02:00
Simone Bordet
83c5105e71
478434 - Priority weights should be between 1 and 256 inclusive.
...
Added required +1 in parsers and -1 in generators to convert from
unsigned byte to weight.
2015-09-26 00:14:45 +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
Simone Bordet
394c105d5d
Cosmetics.
2015-09-25 12:39:53 +02:00
Simone Bordet
f833f36c64
Cosmetics.
2015-09-21 09:34:15 +02:00
Simone Bordet
edce119c0e
477270 - Add ability to send a single PRIORITY frame.
...
Also fixed the mistake of sending the stream id as the parent stream id.
2015-09-14 11:51:19 +02:00
Simone Bordet
dbd66b131b
Introduced a HeadersFrame constructor for HEADERS frames with
...
unspecified stream id, to be used when creating new frames.
2015-09-14 11:51:19 +02:00
Simone Bordet
30532786cc
Improved logging.
2015-09-14 11:51:19 +02:00
Simone Bordet
f2a3bd8f05
477087 - Enforce that the preface contains a SETTINGS frame.
...
Now the ServerParser enforces that the preface bytes are followed by
a SETTINGS frame.
2015-09-10 19:04:47 +02:00
Simone Bordet
fd335d6c3e
Guarded against NPE.
2015-08-20 16:31:09 +02:00
Greg Wilkins
607239028c
470727 - Thread Starvation of selector wakeups.
...
Changed the CallBack.NonBlocking to a default Callback.isNonBlocking, so that wrapping callbacks can determine if they are NonBlocking or not.
2015-07-22 17:31:54 +10:00
Simone Bordet
c367ea8a85
441020 - Support HEADERS followed by CONTINUATION+.
2015-07-08 18:55:47 +02:00
Simone Bordet
a6ff4da9b1
Made the cipher comparator a constant field.
2015-05-26 18:03:55 +02:00
Greg Wilkins
bd27e7d2d4
467730 - HTTP2 requires enabled ciphers to be sorted by blacklist
2015-05-21 01:41:12 +10:00
Simone Bordet
64033e0958
Improved toString().
2015-05-04 12:33:10 +02:00
Simone Bordet
a6cc4ff2f5
465857 - Support HTTP/2 clear-text server-side upgrade.
...
Fixed and test both types of upgrade, from HTTP/1.1 via its
upgrade mechanism, and direct HTTP/2.
2015-04-29 22:27:50 +02:00
Joakim Erdfelt
9e6c8eade1
464727 - Update Javadoc for Java 8 DocLint
2015-04-22 12:43:22 -07:00
Simone Bordet
ffadcd6757
444721 - PushCacheFilter cleanup/improvements.
...
Ported the "maxAssociations" functionality from SPDY's ReferrerPushStrategy.
Added JMX support.
Removed __renew__ special path in favour of a JMX method.
Added clearPushCache() JMX method.
Made push reentrant by eliminating the check for "org.eclipse.jetty.pushed".
2015-04-10 15:22:49 +02:00
Simone Bordet
999177ccc2
Fixed race sending SETTINGS with INITIAL_WINDOW_SIZE.
...
Before, the sender was updating the window size after the SETTINGS
frame was written.
This was leading to a race where the receiver saw the updated window
size and sent DATA frames; these were received by the original sender
before it had the chance to update its local window size, causing an
error.
Now, the update of the window size happen just before writing the
SETTINGS frame to avoid this race.
2015-03-25 19:24:28 +01:00