Commit Graph

28326 Commits

Author SHA1 Message Date
Simone Bordet d190a16b02
Merged branch 'jetty-10.0.x' into 'jetty-11.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-26 10:43:21 +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
Lachlan Roberts d7a8516a01 Merge remote-tracking branch 'origin/jetty-10.0.x' into jetty-10.0.x-10135-websocketFlush 2023-07-24 22:37:03 +10:00
Lachlan Roberts 745ee46ebe Issue #10135 - fix empty binary frame from websocket flush
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-07-24 22:29:28 +10:00
Joakim Erdfelt e587af9139
Merge pull request #10133 from eclipse/fix/12.0.x/error-param-merge
Issue #10131 - Test case showing ERROR param merging works as-is.
2023-07-21 08:48:10 -05:00
Joakim Erdfelt f134ed349e
Issue #10131 - Test case showing ERROR param merging works as-is. 2023-07-20 14:07:29 -05:00
Joakim Erdfelt 408f6a7127
Merge pull request #10132 from eclipse/fix/12.0.0/error-dispatch-query-string
Issue #10131 - revert changes to `ErrorRequest.getQueryString()` and `AsyncServletTest`
2023-07-20 07:26:33 -05:00
Joakim Erdfelt 5d6173f776
Issue #10131 - More asserts in test case 2023-07-19 18:08:38 -05:00
Joakim Erdfelt 1e32e89d59
Issue #10131 - Adding test of request.getQueryString() to ErrorPageTest 2023-07-19 18:06:30 -05:00
Joakim Erdfelt 3ce1f5bd07
Issue #10131 - revert changes to ErrorRequest.getQueryString() and AsyncServletTest 2023-07-19 17:44:49 -05:00
Joakim Erdfelt 16f0a6e41c
Issue #10122 - Unable to use to error-page that is an HTML static file
* Cleaned up ErrorPageTest to ensure that behavior of one test is not impacting a different test
* Added test to replicate issue
* Fixing TODOs in Dispatcher$ErrorRequest
* Restoring original assertion on DispatcherTest.testDispatchMapping404
2023-07-19 13:55:36 -05:00
Simone Bordet abc01d57fd Fixes #10120 - OOME due to HttpChannelState._onIdleTimeout
When `HttpChannelState._onIdleTimeout` was introduced, it was forgotten to null it out in recycle().

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-18 22:04:53 +02:00
Simone Bordet c946a41871 Fixes #10123 - MultiPartByteRanges request gets stuck
The handling of reads in MultiPartByteRanges.PathContentSource was broken for ranges that were larger than the read buffer size.

Fixed by properly counting how many bytes are left to read.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-18 21:37:35 +02:00
Simone Bordet f3d8b1539a
Added test case for #10123.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-18 16:12:32 +02:00
Simone Bordet c19a5817f9
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 23:51:40 +02:00
Simone Bordet af41787678
Merged branch 'jetty-10.0.x' into 'jetty-11.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 23:23:16 +02:00
Simone Bordet 9e16d81cf8 Improvements on suggested PR.
* Made HttpChannel Dispatchable fields for REQUEST and ASYNC dispatches.
* Made AdaptiveExecutionStrategy implement Runnable to remove lambda/anonymous field.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 23:21:55 +02:00
Steven Schlansker 5db0c7b552 HttpChannel, AdaptiveExecutionStrategy: improve profiler-friendliness
In an application with multiple Jetty instances in one JVM (e.g. integration test)
when examining stack frames using the debugger or profiler, most samples
that involve user code will have these two frames in their stack.

Unfortunately, with a lambda, the different Jetty instances actually have different class names
for different lambdas, which causes stack analysis to falsely think the frames are different.

It's a little uglier, but by replacing these two specific lambdas with anonymous classes with a stable name,
the profiler is able to see that the frames are in fact the same and collapse them, improving observability.
2023-07-17 23:21:55 +02:00
Simone Bordet bd80b675ba
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 16:51:42 +02:00
Simone Bordet 46f47ad659
Merged branch 'jetty-10.0.x' into 'jetty-11.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 16:46:28 +02:00
Simone Bordet 218c8d0fb0
Fixes #10086 - Revisiting ProxyConfiguration.getProxies() (#10116)
Removed "for removal" deprecation, added clarifying javadocs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 16:45:17 +02:00
Simone Bordet c967b100e7
Fixes #10105 - Document that Request objects are not reusable. (#10113)
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 16:44:44 +02:00
Simone Bordet 0ef1845da6
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 11:08:25 +02:00
Simone Bordet d721815e23
Merged branch 'jetty-10.0.x' into 'jetty-11.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 11:05:47 +02:00
Simone Bordet af9d8d3a32
Added test case to show how to handle zip content in AsyncMiddleManServlet. (#9986)
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 11:03:57 +02:00
Simone Bordet 0eb143634c
Updated the programming guide client documentation.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-16 15:40:58 +02:00
Simone Bordet af90b35ee7
Moved class `Flags` from `http2.internal` back to `http2` to be used publicly.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-16 12:09:33 +02:00
Simone Bordet 69e2f10521
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-16 12:01:43 +02:00
Simone Bordet d1392e9509
Merged branch 'jetty-10.0.x' into 'jetty-11.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-15 15:32:09 +02:00
Simone Bordet 7352653440
Merged branch 'jpstotz:getter' into 'jetty-10.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-15 15:31:15 +02:00
Simone Bordet e997f48842
Added javadocs to HeaderParser.getFlags() and hasFlag().
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-15 15:29:06 +02:00
Jesse McConnell 5e811d9af0
Fixes #10107 (#10109)
Signed-off-by: Jesse McConnell <jesse.mcconnell@gmail.com>
2023-07-15 15:18:55 +02:00
Joakim Erdfelt 8e52abe8c9
Merge `jetty-11.0.x` into `jetty-12.0.x` - July 14 (#10108)
* Updating various old/moved URL references found across project (`jetty-10.0.x`) (#10098)

+ Now that the migration of `https://eclipse.org/jetty/` to `https://eclipse.dev/jetty/` has occurred, it is time to review the URI use in our project
+ Updated URLs in poms
+ Added more URIs to XmlConfiguration
+ Updated URLs in module files
+ Updated URLs in documentation
+ Updated URLs in HTML
+ Correcting bad double-scheme URLs (eg: `http://https://www.eclipse...`)
+ Updating text in *.mod files
+ Removing `/current/` from path `/jetty/documentation/current/`
+ Fixing mailing list URL
+ Fixing github URL references in jsps

---------

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-07-14 20:21:11 -05:00
Jesse McConnell 7cd1178b3c Fixes #10107 (#10109)
Signed-off-by: Jesse McConnell <jesse.mcconnell@gmail.com>
2023-07-14 13:43:40 -05:00
Simone Bordet e90bccb158
Merge branch 'jetty-10.0.x' into getter 2023-07-14 20:07:50 +02:00
Joakim Erdfelt 8e5bedcf8f
Merge remote-tracking branch 'origin/jetty-10.0.x' into jetty-11.0.x 2023-07-14 12:48:56 -05:00
Joakim Erdfelt a9c596e3d7
Updating various old/moved URL references found across project (`jetty-10.0.x`) (#10098)
* Now that the migration of `https://eclipse.org/jetty/` to `https://eclipse.dev/jetty/` has occurred, it is time to review the URI use in our project

+ Updated URLs in poms
+ Added more URIs to XmlConfiguration
+ Updated URLs in module files
+ Updated URLs in documentation
+ Updated URLs in HTML
+ Correcting bad double-scheme URLs (eg: `http://https://www.eclipse...`)
+ Updating text in *.mod files
+ Removing `/current/` from path `/jetty/documentation/current/`
+ Fixing mailing list URL

---------

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-07-14 12:38:45 -05:00
Simone Bordet 9a476e2c0c
Small changes from #10090.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-14 18:09:35 +02:00
Simone Bordet 0879f6bc85
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-14 17:49:07 +02:00
Simone Bordet f06ff2f9fa
Merged branch 'jetty-10.0.x' into 'jetty-11.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-14 17:10:39 +02:00
Greg Wilkins 11d2a32eea
Fixes #9999 and #10055 - proper quoting for dry-run
Using "strong quoting" with the single quote character to quote argument of --dry-run output.

Signed-off-by: gregw <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-14 17:05:41 +02:00
Ludovic Orban 248354f64a
Fixes #9910 - Inconsistent handling of welcome files
* Added DefaultServlet combinations tests.
* Removed pathInfoOnly handling present in Jetty 11, because it is always true for mapping to "/", and always false for other mappings.

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-07-14 11:58:21 +02:00
Lachlan a317a1892d
Merge pull request #10106 from eclipse/jetty-12.0.x-asyncServletTest
increase timeouts in AsyncServletTest to make it less flaky + re-enable tests
2023-07-14 16:37:38 +10:00
Lachlan 993a111805
Merge pull request #10071 from eclipse/jetty-12.0.x-sizeLimitHandler
add SizeLimitHandler to Jetty-12
2023-07-14 16:37:02 +10:00
Lachlan Roberts 887528e575 increase timeouts in AsyncServletTest to make it less flaky
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-07-14 11:27:35 +10:00
Simone Bordet 190af2972b
Fixes delivery of events to `Response.CompleteListener`s. (#10102)
In case of `request.onComplete(Response.CompleteListener l)`, only the complete event should be delivered to `l`, not all the events (in case `l` implements other listener interfaces).

Only `Response.CompleteListener` passed to `request.send(Response.CompleteListener)` should receive all events.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-13 15:12:47 +02:00
Simone Bordet a08e953c74
Fixes #10087 - Flaky EventsHandlerTest due to trailers. (#10093)
* Fixes #10087 - Flaky EventsHandlerTest due to trailers.

HTTP/2 trailers may arrive and be processed before the application reads request chunks.

Avoid the race condition by storing the trailers aside and returning them during reads.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-13 08:19:03 +02:00
Simone Bordet 8c9d6e4528
Started the work on the migration guide.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-13 08:04:25 +02:00
Joakim Erdfelt 730b1687f9
Merge pull request #10097 from eclipse/release/12.0.0.beta3
Merge `release/12.0.0.beta3` back into `jetty-12.0.x`
2023-07-12 13:13:11 -05:00
gregw c435bfdbe6 Extra test for #10085 2023-07-12 14:38:44 +02:00