Commit Graph

2212 Commits

Author SHA1 Message Date
Joakim Erdfelt 722b97ad6a
Updating to version 10.0.18-SNAPSHOT 2023-10-09 13:32:28 -05:00
Joakim Erdfelt af15f12297
Updating to version 10.0.17 2023-10-09 13:21:53 -05:00
Joakim Erdfelt 896dee2466
Updating to version 10.0.17-SNAPSHOT 2023-08-25 14:27:38 -05:00
Joakim Erdfelt a2735a9ae9
Updating to version 10.0.16 2023-08-25 14:10:55 -05:00
Simone Bordet 30ed83f3d0
Fixes #10211 - NPE in ArrayByteBufferPool.findOldestEntry() (#10212)
* Fixes #10211 - NPE in ArrayByteBufferPool.findOldestEntry()

Fixed algorithm to check for oldest entry to avoid NPE.
Added comments for clarity.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-08-02 22:26:53 +02:00
Simone Bordet a5a0a6c887
Fixes #10145 - WritePendingException over HTTP/2 tunnel (#10146)
Method HTTP2StreamEndPoint.flush() has a "no pending operation" semantic, but the previous implementation was calling stream.data(), which may become a pending operation if the stream is congested.

Changed the implementation of flush() to return false in the IDLE and PENDING cases.
Now every flush() is converted to a write(), which has the same semantic as stream.data().

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-26 22:59:24 +02:00
Simone Bordet e7a088f3f0 Fixes #10120 - OOME caused by CyclicTimeouts.
Fixed handling of Expirable.getExpireNanoTime() in case it returns Long.MAX_VALUE.

Also fixed implementations of Expirable that were not initializing their expireNanoTime field to Long.MAX_VALUE.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-26 10:42:10 +02:00
Almas Abdrazak 283b74a599
Fixes #9947 - check that each selector inside of _selectors isn't null before calculating #totalKeys (#9962)
Check that selector isn't null before calculating totalKeys.
2023-06-25 10:37:34 +02:00
Lachlan Roberts f89defcf2f Merge remote-tracking branch 'origin/jetty-10.0.x' into jetty-10.0.x-9682-WebSocketBufferLeak 2023-06-14 10:23:13 +10:00
Almas Abdrazak 082f5e042c
Fixes #6140 - JMX total number of keys in SelectorManager
Added a new JMX property in SelectorManager that reports total number of keys from all ManagedSelectors

Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-06-11 19:07:08 +02:00
Lachlan Roberts c055fd06b5 Issue #9682 - changes from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-06-09 14:05:23 +10:00
Lachlan Roberts a0fe47e1e8 Issue #9682 - notify WebSocket message sinks of connection close
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-06-07 15:45:16 +10:00
Ludovic Orban debb124dc9 handle review comments
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-05-26 23:09:24 +02:00
Ludovic Orban 871022f3b0 #9397 add trust store config to H3
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-05-26 23:09:24 +02:00
Joakim Erdfelt ca3c1756ad
Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
Joakim Erdfelt 68017dbd00
Updating to version 10.0.15 2023-04-11 12:24:32 -05:00
Olivier Lamy e62cc0344a Updating to version 10.0.15-SNAPSHOT 2023-03-01 18:55:10 +10:00
gregw 7a7d69a69f Happy no year
Remove modification date from copyright notice and instead just have the
project inception year.

Signed-off-by: gregw <gregw@webtide.com>
2023-02-15 15:22:32 +11:00
dependabot[bot] ca19b143a9
Bump maven.surefire.plugin.version from 3.0.0-M5 to 3.0.0-M8 (#9255) 2023-02-02 04:15:39 +00:00
Joakim Erdfelt 54c4c03244
Updating to version 10.0.14-SNAPSHOT 2022-12-07 14:33:17 -06:00
Joakim Erdfelt 1c2636ea05
Updating to version 10.0.13 2022-12-07 14:12:50 -06:00
Simone Bordet 12041da72f
Fixes #8810 - ArrayRetainableByteBufferPool inefficiently calculates bucket indices (#8882)
Added constructor that uses IntUnaryOperator to avoid boxing.
Deprecated constructor that uses Function<Integer, Integer>.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-11-10 18:42:53 +01:00
Ludovic Orban b27a528cf5 #8695: move client address binding to QuicClientConnectorConfigurator
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2022-10-18 09:14:04 +02:00
Ludovic Orban 15e90acab6 #8695: fix inconsistencies between quiche's native API and its JNA/Foreign bindings
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2022-10-18 09:14:04 +02:00
Simone Bordet ecea0e6d0a
Fixes #7993 - HttpClient idleTimeout configuration being ignored/over… (#8672)
* Fixes #7993 - HttpClient idleTimeout configuration being ignored/overridden

The problem was that the timeout scheduling was not happening,
because for TunnelRequest the timeouts were set in normalizeRequest(),
which runs after the scheduling.

Now a call to request.sent() is made also after normalizeRequest()
so that the timeouts is scheduled (if it was not scheduled before).

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-10-05 11:46:00 +02:00
Olivier Lamy dbd07146ec
merge back release branch to bump version to 10.0.13-SNAPSHOT (#8593)
* Updating to version 10.0.12

* Updating to version 10.0.13-SNAPSHOT

* VERSION.TXT =+ content of jetty-9.4.49.v20220914 release

* remove strange line and reorder
2022-09-16 19:50:12 +10:00
Simone Bordet 77ad0189ba
Fixes #8532 - Review System.nanoTime() usages. (#8535)
* Fixes #8532 - Review System.nanoTime() usages.

Introduced o.e.j.util.NanoTime class to deal with nanoTimes.

Now NanoTime.now() should be used instead of System.nanoTime(),
and various <unit>[elapsed|since|until]() methods to calculate nanoTimes.

Furthermore, comparing 2 nanoTimes should be done via isBefore(),
rather than using the < operator, which is wrong as specified in
the System.nanoTime() javadocs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-09-06 09:30:02 +02:00
Simone Bordet be3d16bdbb
Fixes #8007 - Support Loom. (#8360)
Implemented support for virtual threads for HTTP/1.1, HTTP/2 and HTTP/3.

The virtual thread support is in AdaptiveExecutionStrategy.
When virtual threads are supported and enabled, reserved threads are disabled and
blocking tasks are run in a virtual thread instead that being executed by the Executor.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-08-10 14:31:04 +02:00
Joakim Erdfelt cbed42491a
Excluding Stress/Slow tests from normal CI builds. (#8314)
Nightly CI builds still run them.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-07-21 02:40:26 -05:00
Greg Wilkins c1c2bdbb45
Fix errors in Mapped pool and javadoc (#8264)
* Fix errors in javadoc
* Further RBBP improvements
2022-07-07 22:49:04 +10:00
Greg Wilkins 2b817f06c6
Combined ByteBufferPool (#8171)
All `ByteBufferPool` can now be accessed as `RetainableByteBufferPools`.

Users now need to configure only a single buffer pool and there is just the additional retained parameter that needs consideration.
Default buffer pool has been changed to logarithmic, but we may wish to review that before next release.
Default factor size has been increased to 4096.
2022-07-04 10:38:30 +10:00
Joakim Erdfelt 64d12e2a5a
Merge Release 10.0.11 back into `jetty-10.0.x` branch (#8194)
* Updating to version 10.0.11

* Updating to version 10.0.12-SNAPSHOT
2022-06-22 16:24:48 -05:00
Joakim Erdfelt c2bc103cb9
Merge Release 10.0.10 back into `jetty-10.0.x` (#8180)
* Updating to version 10.0.11-SNAPSHOT
2022-06-21 14:41:41 +02:00
Joakim Erdfelt 7cc461b8f3
Fixing javadoc build errors (#8173)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-06-16 15:53:25 +02:00
Ludovic Orban 66de7ba618
Improve ssl buffers handling (#8165)
* Fixes #8161 improve SSLConnection buffers handling

Added memory heuristic to ArrayRetainableByteBufferPool

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2022-06-15 15:10:50 +02:00
Joakim Erdfelt 16420f0181
Set version to `10.0.10-SNAPSHOT` (#7823)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-04-03 20:33:44 +10:00
Joakim Erdfelt f079949a35
Merge Release 10.0.9 (#7821)
* Updating to version 10.0.9

* Updating to version 10.0.10
2022-04-02 08:43:44 -05:00
Simone Bordet a4fda96f49
Updating to version 10.0.9-SNAPSHOT 2022-02-07 12:02:02 +01:00
Simone Bordet 716c7afd8e
Updating to version 10.0.8 2022-02-07 11:34:12 +01:00
Simone Bordet 4037861668
Fixes #7514 - Adding InheritedListeners to already-started components… (#7522)
* Fixes #7514 - Adding InheritedListeners to already-started components can cause IllegalStateException

Removed the unnecessary check-and-throw statements from SelectorManager.
Use COW array for listeners that can be modified whilst selector is running.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
Co-authored-by: Greg Wilkins <gregw@webtide.com>
2022-02-03 09:51:37 +01:00
Sebastian Lövdahl a8a6020ab2
Fix log class name in ArrayByteBufferPool
Signed-off-by: Sebastian Lövdahl <slovdahl@hibox.fi>
(cherry picked from commit dcaf3f2d78)
2022-02-02 11:59:06 +01:00
Joakim Erdfelt cb127793e5
Happy New Year 2022 (#7459)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-01-27 10:42:30 -06:00
Simone Bordet 3d6578deee Issue #6728 - QUIC and HTTP/3
Updates after merge of #7100.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-12-20 09:33:38 +01:00
Simone Bordet c879358777 Issue #6728 - QUIC and HTTP/3
- QPACK exceptions now use long instead of int, to be consistent with other error codes.
- Fixed ManagedSelector to count down the stop latches in finally blocks, so that they are always counted down even in case of exceptions.
- Improved exception handling in case of closes.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-12-20 09:33:38 +01:00
Ludovic Orban b8f39b5b2c get rid of HttpClientTransportOverQuic and IClientConnector
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-12-20 09:33:38 +01:00
Ludovic Orban fe5c65820d introduce IClientConnector interface
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-12-20 09:33:38 +01:00
Ludovic Orban fc25540331 align ServerDatagramEndPoint with SocketChannelEndPoint
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-12-20 09:33:38 +01:00
Ludovic Orban 9d0b7f71ac add licenses + fix checkstyle + modularize
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-12-20 09:33:38 +01:00
Ludovic Orban e1cd6956f4 encode address into buffers
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-12-20 09:33:38 +01:00
Ludovic Orban 340eb46b43 cleanups
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-12-20 09:33:38 +01:00