332 Commits

Author SHA1 Message Date
Simone Bordet
9f9e9ecaf9 Changes for Issue #824 (#825)
* Issue #824 - Implement notifications of asynchronous error conditions for HTTP/2.

Introduced new method HttpChannelState.asyncError() to be called in
case of asynchronous errors, i.e. those errors that do not happen in
the HttpChannel.handle() loop.

Implemented HTTP/2 callbacks to call HttpChannelState.asyncError()
and plug in the existing error handling mechanism.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Issue #824 - Implement notifications of asynchronous error conditions for HTTP/2.

Improved implementation to ignore idle timeouts for streams and
session in case that requests are being handled, matching the HTTP/1.1
behavior.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2016-08-12 11:02:52 +02:00
Simone Bordet
49214a9d61 Fixed compilation issue. 2016-08-08 23:24:59 +02:00
Simone Bordet
f695d9cf31 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-08-06 12:31:47 +02:00
Simone Bordet
45695e08aa Fixes #792 - [HTTP/2] Socket seems to be not closed completely.
Now sending the GOAWAY and then disconnecting from doStop(), ensuring
that the underlying TCP connection is closed even if the server does
not close.
2016-08-06 12:31:20 +02:00
Simone Bordet
92c7b991d8 Code cleanups. 2016-08-06 12:31:20 +02:00
Joakim Erdfelt
87c8e1c019 Merge branch 'jetty-9.3.x' into jetty-9.4.x 2016-07-25 17:02:51 -07:00
Greg Wilkins
e53ea55f48 Issue #752 SETTINGS_MAX_HEADER_LIST_SIZE
Defined missing status codes (removed old/wrong javadoc)
Changed use of 413 to 431
Received SETTINGS_MAX_HEADER_LIST_SIZE is set on hpack encoded and warning generated only for large responses.
2016-07-23 12:17:50 +10:00
Simone Bordet
cceec33f54 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-21 19:12:38 +02:00
Simone Bordet
088dc036b4 Fixes #752 - Implement support for HTTP2 SETTINGS_MAX_HEADER_LIST_SIZE. 2016-07-21 19:12:10 +02:00
Simone Bordet
823ba4add6 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-21 18:15:38 +02:00
Simone Bordet
6a15bbfb2b Issue #751 - Remove usages of ArrayQueue. 2016-07-21 17:55:48 +02:00
Greg Wilkins
6e4abb3339 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-07-21 12:29:54 +10:00
Greg Wilkins
2db91a88cf HTTP2 SETTINGS_MAX_HEADER_LIST_SIZE #752 2016-07-21 12:28:32 +10:00
Simone Bordet
0d8f1b9e69 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-19 10:34:19 +02: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
b3fda0b733 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-20 23:11:16 +02:00
Simone Bordet
442a7ce8cc Improved logging. 2016-06-20 23:10:44 +02:00
Simone Bordet
9632019e18 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-17 11:54:24 +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
1cec689ece Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-17 10:26:16 +02:00
Simone Bordet
9d9f68da08 Reduced logging level for MAX_HEADER_LIST_SIZE. 2016-06-17 10:25:45 +02: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
fab61b9157 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-20 01:12:51 +02:00
Simone Bordet
d55aaa4a0c Improved logging. 2016-05-20 01:12:24 +02:00
Simone Bordet
039ced6e25 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-16 15:13:54 +02: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
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
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
Simone Bordet
cdcde53c6b Merged branch 'jetty-9.3.x' into 'master'. 2016-04-01 14:44:50 +02:00
Simone Bordet
ce04cadb79 Fixes #233 - Add message to idle TimeoutException. 2016-04-01 14:44:26 +02:00
Simone Bordet
966cc2dcba Merged branch 'jetty-9.3.x' into 'master'. 2016-03-16 22:14:31 +01:00
Simone Bordet
18aeca6567 Fixes #242 (Expose HTTP/2 LastStream error) 2016-03-16 22:14:09 +01:00
Joakim Erdfelt
dcfa0b8910 Merge branch 'jetty-9.3.x' 2016-03-15 07:49:28 -07:00
Simone Bordet
26f8deddf7 Introduced Callback.Nested.
Refactored code that was using nested callbacks and removed
unnecessary overrides now that we have default methods.
2016-03-15 15:24:44 +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
bb08b65d15 Merged branch 'jetty-9.3.x' into 'master'. 2016-02-29 11:33:25 +01:00
Simone Bordet
aadfae936c Issue #366 (Avoid HTTP2Flusher reentrancy).
Made HTTP2Flusher termination to be atomic and non-reentrant.
2016-02-29 11:32:39 +01:00
Simone Bordet
51009208d4 Merged branch 'jetty-9.3.x' into 'master'. 2016-02-19 13:23:34 +01:00
Simone Bordet
1cce6fd69f Improved logging. 2016-02-19 11:36:06 +01:00
Simone Bordet
2ac465a343 Merged branch 'jetty-9.3.x' into 'master'. 2016-02-09 18:14:07 +01:00
Simone Bordet
6306f06e2f Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2016-02-09 18:12:04 +01:00
Simone Bordet
cb79379b79 Merged branch 'jetty-9.3.x' into 'master'. 2016-02-05 18:14:56 +01:00
Simone Bordet
460c778ca1 Added Javadocs. 2016-02-05 18:12:37 +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
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