Simone Bordet
4c24c457de
Fixes #2312 - HTTP/2 Connection.Listener notified after first request.
...
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-10 15:05:02 +01:00
Simone Bordet
b71cd70bf7
Fixes #2297 - HTTP/2 client transport should honor HttpClient.connectBlocking.
...
Introduced property connectBlocking in HTTP2Client so that it can
be forwarded by HttpClient and then used for HTTP/2 connects.
Also introduced HTTP2Client.bindAddress, again forwarded from HttpClient.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-07 11:52:28 +01:00
Joakim Erdfelt
e3e3f9eb0b
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x-fixed
2018-03-06 11:16:25 -06:00
Greg Wilkins
1713a49551
improved timing on http2 reset stream test
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-06 15:43:07 +11:00
Greg Wilkins
0cb4f5629d
Jetty 9.4.x 1803 proposal 0+2 ( #2199 )
...
Merging this PR for #2199 as we currently think it is not worse than previous and the code base is definitely simpler. While JMH has shown significant benefits for this approach, we have yet been able to demonstrate them in full scale integration tests - however that is likely due to GC and thread pool issues dominating.
A `org.eclipse.jetty.http2.PEC_MODE` System property has been added to allow the EWYK scheduling to be disabled for HTTP/2 if need be.
* Implementation of #1803 proposal 2 - EITHER dispatch type for EWYK
* made code more readable
* increase small threadpools in tests for extra reserved thread
* clean up
* minor code simplifications
* Work in progress to simplify reserved thread pool
* use a single ReservedThreadPool built into the QueuedThreadPool
* fixed javadoc
* removed more old reserved thread references
* disable EWYK for h2
* fixes from review
* use EWYK for HTTP2
* Fixed javadocs, imports and QueuedThreadPool constructors.
* fix javadoc
* EWYK avoid unnecessary pendings
* after review
* fixed merge with jetty-threadpool.xml
* alternate EWYK implementations
* added jetty copyright headers
* Simplified EWYK code after review
* fixed bad merge
* Code cleanups.
* Improved Javadocs for deprecated property "reservedThreads".
* Improved Javadocs for deprecated property "reservedThreads".
* added a system property to enable only PEC for HTTP/2
Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-27 14:29:59 +11:00
Simone Bordet
8a6b33a3e8
Fixes #2190 - HTTP/2 close and GOAWAY behavior.
...
Now the receiver of a GOAWAY also replies with a GOAWAY
before closing the connection.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-09 10:55:39 +01:00
Greg Wilkins
ab5fc29cca
Jetty 9.4.x 1803 proposal 0 - single ReservedThreadExecutor ( #2119 )
...
Issue #1803 - Review usage of scheduling strategies
Use a single ReservedThreadExecutor built into the QueuedThreadPool
via new interface TryExecutor.
Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-08 11:08:48 +01:00
Joakim Erdfelt
d5a0878019
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
2018-01-09 10:08:30 -06:00
Joakim Erdfelt
21365234f8
Issue #2108 - Updating license headers for year 2018
2018-01-09 09:44:41 -06:00
Joakim Erdfelt
41ed9f29f4
Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x
2018-01-09 09:37:25 -06:00
Joakim Erdfelt
fa4c7b0ca9
Issue #2108 - Updating license headers for year 2018
2018-01-09 08:39:37 -06:00
Greg Wilkins
b2ff7c5cb8
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
2018-01-08 21:30:12 +01:00
Simone Bordet
1cad36969f
Made test more robust.
...
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-03 10:46:02 +01:00
Simone Bordet
a116fd05a2
Merged branch 'jetty-9.4.x' into 'master'.
2017-12-11 11:50:49 +01:00
Simone Bordet
d88e2b767f
Fixes #2037 - HTTP/2 stream reset leaves stream frames in the flusher.
...
Now waking up the flusher via iterate() after a reset has been received.
This ensures that frames that may have stalled are removed from the
flusher queue.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-11 10:57:13 +01:00
Joakim Erdfelt
ff53002fac
Updating to version 9.4.9-SNAPSHOT
2017-11-21 13:11:31 -07:00
Joakim Erdfelt
82b8fb23f7
Updating to version 9.4.8.v20171121
2017-11-21 12:33:52 -07:00
Jesse McConnell
a72eb0001d
Updating to version 9.3.23-SNAPSHOT
2017-10-30 15:39:57 -05:00
Jesse McConnell
705048cc49
Updating to version 9.3.22.v20171030
2017-10-30 15:16:29 -05:00
Simone Bordet
81c3fe1507
Merged branch 'jetty-9.4.x' into 'master'.
2017-10-12 12:26:09 +02:00
Simone Bordet
4236f14955
Fixes #1891 - Make HTTP/2 async error notifications configurable.
...
Introduced HttpConfiguration.notifyRemoteAsyncErrors, true by default.
2017-10-12 12:13:02 +02:00
Greg Wilkins
1b7ebf5599
Merge remote-tracking branch 'origin/jetty-9.4.x'
2017-09-23 00:22:57 +10:00
Joakim Erdfelt
d9865a02ba
Updating to version 9.4.8-SNAPSHOT
2017-09-14 08:44:27 -07:00
Joakim Erdfelt
80fb788d0c
Updating to version 9.4.7.v20170914
2017-09-14 07:35:18 -07:00
Simone Bordet
006dee439f
Code cleanups.
...
Added TODOs to remember the link between the HTTP2Connection
fill callback and HTTP2ConnectionFactory.reservedThreads.
2017-09-08 10:52:40 +02:00
Simone Bordet
3cbcb380a6
Merged branch 'jetty-9.4.x' into 'master'.
2017-08-21 17:02:56 +02:00
Simone Bordet
cd08d2502f
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2017-08-21 17:00:05 +02:00
Simone Bordet
f7925aebd2
Removed debug logging.
2017-08-21 12:12:26 +02:00
Greg Wilkins
60a7551785
Merge remote-tracking branch 'origin/jetty-9.4.x'
2017-08-15 11:55:58 +10:00
Simone Bordet
87d090e062
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2017-08-11 16:42:21 +02:00
Simone Bordet
d3d02f227e
Fixes #1719 - Improve handling of HTTP/2 queued requests.
...
Idle timeout have a special meaning in that they become a no-operation
if the application is dispatched but idle (neither reading nor writing).
HttpChannelOverHTTP2 now forwards the idle timeout to HttpInput, which
will only change its state if it is interested in reading.
HttpInput.consumeAll() has been modified to consume all input even if
it's already failed.
Failures caused by the other peer (e.g. I/O failures or stream resets)
are now retained and will eagerly consumed any queued data to free up
the flow control windows.
2017-08-09 16:21:53 +02:00
Joakim Erdfelt
585f126b48
Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x-clean
2017-08-08 09:24:41 -07:00
Greg Wilkins
a105be95e4
Issue #1637 Thread per HTTP/2 Connection
...
This fix simplifies the EWYK scheduler by factoring out the preallocated producer into a
ReservedThreadExecutor class. A shared ReservedThreadExecutor can then be used by multiple
EWYK instances to avoid over allocation of threads.
Squashed commit of the following:
commit c435dc20e25bd274d69423be1be7b0565925f249
Merge: 58a5a9a 90e5b56
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Jun 21 10:48:22 2017 +0200
Merge branch 'jetty-9.4.x' into jetty-9.4.x-ewyk3
commit 58a5a9a655ee1a72a66f54ac8c95d7c9d73afe85
Author: Simone Bordet <simone.bordet@gmail.com>
Date: Wed Jun 14 15:56:43 2017 +0200
Code cleanups.
commit 4e5296216b52948523572352cba391438ff6b494
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Jun 14 07:34:58 2017 +0200
refixed Producing to Reproducing
commit a1f8682f86d1f0803121162e3f14d7768286d3ed
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Jun 14 07:26:29 2017 +0200
fixed Producing to Reproducing
commit 9468932e062d2271d8dc1d43a78544757732fff5
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 16:33:44 2017 +0200
fixed javadoc
commit 9d4941eb97638fec09b3fe34d423538d17943b6f
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 16:05:27 2017 +0200
Renamed Preallocated to ReservedThread
commit 6d3379ab64c6dcc2a7aa8ec7088afd77863816c2
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 12:28:52 2017 +0200
Added configuration in modules
commit 1bd1adea4682538e1546c2ae53f4c9340dafb3bb
Merge: 83418a9 6702248
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 10:09:29 2017 +0200
Merge branch 'jetty-9.4.x' into jetty-9.4.x-ewyk3
commit 83418a91320c8bfc54465ca02efdce0d2c874a0e
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 10:08:35 2017 +0200
javadoc
commit 62918fd39189fed3414fec4a7c8380c21e90a4b8
Author: Greg Wilkins <gregw@webtide.com>
Date: Sat Jun 10 00:04:06 2017 +0200
Improved EatWhatYouKill implementation
Simplified by abstracting out PreallocatedExecutor
Removed invocation execution
HTTP2 now uses a shared PreallocationExcecutor between connection
2017-08-08 09:13:44 -07:00
Simone Bordet
88617b9233
Fixes #1595 - Avoid sending unnecessary stream WINDOW_UPDATE frames.
...
Now the flow control strategy checks whether the stream is already
remotely closed, and if so it does not send the window update.
2017-08-08 09:10:24 -07:00
Joakim Erdfelt
a7bcac6d75
Updating to version 9.3.20.v20170531
2017-08-08 09:07:35 -07:00
Joakim Erdfelt
11a544d6ac
Updating to version 9.3.22-SNAPSHOT
2017-08-01 11:26:37 -07:00
Joakim Erdfelt
bb1d69ca52
Updating to version 9.3.21.M0
2017-08-01 10:47:04 -07:00
Greg Wilkins
23c8e64fd8
Merge remote-tracking branch 'origin/jetty-9.4.x'
2017-06-21 14:40:13 +02:00
Greg Wilkins
11b5cf5a2b
Issue #1637 Thread per HTTP/2 Connection
...
This fix simplifies the EWYK scheduler by factoring out the preallocated producer into a
ReservedThreadExecutor class. A shared ReservedThreadExecutor can then be used by multiple
EWYK instances to avoid over allocation of threads.
Squashed commit of the following:
commit c435dc20e25bd274d69423be1be7b0565925f249
Merge: 58a5a9a 90e5b56
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Jun 21 10:48:22 2017 +0200
Merge branch 'jetty-9.4.x' into jetty-9.4.x-ewyk3
commit 58a5a9a655ee1a72a66f54ac8c95d7c9d73afe85
Author: Simone Bordet <simone.bordet@gmail.com>
Date: Wed Jun 14 15:56:43 2017 +0200
Code cleanups.
commit 4e5296216b52948523572352cba391438ff6b494
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Jun 14 07:34:58 2017 +0200
refixed Producing to Reproducing
commit a1f8682f86d1f0803121162e3f14d7768286d3ed
Author: Greg Wilkins <gregw@webtide.com>
Date: Wed Jun 14 07:26:29 2017 +0200
fixed Producing to Reproducing
commit 9468932e062d2271d8dc1d43a78544757732fff5
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 16:33:44 2017 +0200
fixed javadoc
commit 9d4941eb97638fec09b3fe34d423538d17943b6f
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 16:05:27 2017 +0200
Renamed Preallocated to ReservedThread
commit 6d3379ab64c6dcc2a7aa8ec7088afd77863816c2
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 12:28:52 2017 +0200
Added configuration in modules
commit 1bd1adea4682538e1546c2ae53f4c9340dafb3bb
Merge: 83418a9 6702248
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 10:09:29 2017 +0200
Merge branch 'jetty-9.4.x' into jetty-9.4.x-ewyk3
commit 83418a91320c8bfc54465ca02efdce0d2c874a0e
Author: Greg Wilkins <gregw@webtide.com>
Date: Tue Jun 13 10:08:35 2017 +0200
javadoc
commit 62918fd39189fed3414fec4a7c8380c21e90a4b8
Author: Greg Wilkins <gregw@webtide.com>
Date: Sat Jun 10 00:04:06 2017 +0200
Improved EatWhatYouKill implementation
Simplified by abstracting out PreallocatedExecutor
Removed invocation execution
HTTP2 now uses a shared PreallocationExcecutor between connection
2017-06-21 11:48:41 +02:00
Joakim Erdfelt
5ee1c7a533
Merge branch 'release-9.4.6' into jetty-9.4.x
2017-06-07 10:01:11 -07:00
Simone Bordet
b953f8d2d0
Merged branch 'jetty-9.4.x' into 'master'.
2017-06-05 18:07:51 +02:00
Simone Bordet
28e6378b26
Fixes #1595 - Avoid sending unnecessary stream WINDOW_UPDATE frames.
...
Now the flow control strategy checks whether the stream is already
remotely closed, and if so it does not send the window update.
2017-06-05 18:07:29 +02:00
Joakim Erdfelt
6a3c40e935
Updating to version 9.4.7-SNAPSHOT
2017-05-31 17:26:34 -07:00
Joakim Erdfelt
8ba0f2d95d
Updating to version 9.4.6.v20170531
2017-05-31 16:22:52 -07:00
Joakim Erdfelt
429380d36a
Updating to version 9.3.21-SNAPSHOT
2017-05-31 16:10:04 -07:00
Joakim Erdfelt
0f3b1cbe36
Updating to version 9.3.20.v20170531
2017-05-31 15:24:57 -07:00
Simone Bordet
311b9fbab0
Merged branch 'jetty-9.4.x' into 'master'.
2017-05-17 13:16:45 +02:00
Simone Bordet
1ac103b6ce
Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'.
2017-05-17 13:16:21 +02:00
Simone Bordet
d53af5d737
Fixes #523 - TLS close behaviour breaking session resumption.
...
Since requests cannot be connection delimited, don't call
sslEngine.closeInbound() on the server.
On the client, added a configuration parameter to allow missing
TLS Close Message, since many servers do that.
Introduced SslConnection.allowMissingCloseMessage so that it
throws in case of truncation attacks.
2017-05-17 13:07:21 +02:00
Greg Wilkins
ce8342f12a
Updated to latest servlet 4.0 draft
2017-05-03 11:04:57 +02:00