23100 Commits

Author SHA1 Message Date
Lachlan
b8370f679c
Merge pull request #6604 from eclipse/jetty-10.0.x-6602-SessionTrackerLeak
Issue #6602 - Do not leak WebSocket SessionTracker if closed in onOpen
2021-08-17 09:28:46 +10:00
Simone Bordet
dbc0ce7c13
Fixes #6372 - Review socket options configuration (#6610)
* Fixes #6372 - Review socket options configuration

Introduced in ClientConnector:

* tcpNoDelay
* reusePort
* receiveBufferSize
* sendBufferSize

Reworked configuration of socket options in ClientConnector.
JMX-ified ClientConnector.

Introduced reusePort in ServerConnector.
Updated server modules with the new reusePort property.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-08-13 17:39:52 +02:00
Greg Wilkins
2b0161e743
Fix #6476 Use dry run in jetty.sh (#6598)
* Fix #6597 Use dry run in jetty.sh

Use a --dry-run in jetty.sh to pre-expand the java arguments and thus avoid having two JVMs running in the case of exec.

Also made a small change to allow script to check the current directory for JETTY_BASE, as that allows testing and runs in the same style as direct calls to start.jar

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2021-08-13 17:37:51 +02:00
Simone Bordet
4af93b5e19
Issue #6476 - warn on exec (#6597)
Fixes #6476 - Show message if JVM args are present but new JVM is spawned

* Improved documentation by correctly redacting out `jetty-halt.xml`,
an XML file that is only necessary for rendering the documentation.
* Added WARN message when new JVM is spawned.
* Updated documentation.
* Updated --list-config to report whether a JVM is forked.
* Added test case.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-08-13 17:32:53 +02:00
Ludovic Orban
324fe5e3ee #6327 enable testDefaultServletSuccess
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
a99ff502d1 #6327 enable more disabled tests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
15bef0c9ed #6327 rework testRequestIdleTimeout and merge http(s) and fcgi test
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
c818581185 #6327 more latches, less sleeps
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
1a15f2c48d #6327 enable more disabled tests, using awaitility and shortening wasteful sleeps
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
0108a197e8 #6327 enable disabled HttpConnectionLifecycleTest tests, using awaitility to remove wasteful sleeps
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
6881ee9a6a #6327 make SelectorManagerTest.testConnectTimeoutBeforeSuccessfulConnect always enabled, using latches and less wasteful timeouts
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
0a98a37cb6 #6327 wait for the request to be committed before sending the data
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
72505af846 #6327 stop relying on timeouts to abort tested requests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
8766bddb50 #6327 improve test
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
56eed8211e #6327 enable HttpClientTest.testRequestIdleTimeout
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
999b3ca11e #6327 enable ResourceHandlerTest.testSlowBiggest
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
37eb7909be #6327 enable HttpClientStreamTest.testUploadWithDeferredContentProviderFromInputStream
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
2868eea9cc #6327 enable all disabled tests in HttpClientContinueTest
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
7867d51c91 #6327 replace Await helper with awaitility
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
5dc856196e #6327 extract HttpOutput._apiState value from toString
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Ludovic Orban
26d144d708 #6327 enable AsyncIOServletTest.testAsyncWriteClosed
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-08-12 10:47:24 +02:00
Lachlan Roberts
646707b85c Issue #6602 - do not invoke SessionListener onOpen if session has been closed in OnOpen
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-12 15:50:25 +10:00
Simone Bordet
10ef07b9e7 Fixes #6369 - Increment default jetty.http2.rateControl.maxEventsPerSecond
Incremented rateControl.maxEventsPerSecond to 50.
Fixed mistakes in the http2c module.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
(cherry picked from commit 784293aa6d3e8c0bee77264258ac64ac48a4836f)
2021-08-11 09:55:42 +02:00
dependabot[bot]
cc8ece5d56 Bump ant from 1.10.9 to 1.10.11
Bumps ant from 1.10.9 to 1.10.11.

---
updated-dependencies:
- dependency-name: org.apache.ant:ant
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-10 15:55:54 +02:00
Olivier Lamy
c7f0c5a4ca
Issue #6373 testing modules, starting with session storage (#6529)
* Issue #6373 testing modules, starting with session storage

Signed-off-by: Olivier Lamy <oliver.lamy@gmail.com>
2021-08-06 12:07:09 +10:00
Simone Bordet
49a08450c2
Fixes #6043 - Reimplement UnixSocket support based on Java 16. (#6522)
Fixes #6043 - Reimplement UnixSocket support based on Java 16.

* Introduced new module "jetty-server-unixdomain".
It uses reflection to access the Java 16 Unix-Domain classes to keep compatibility with the other modules and the build.
* Added Jetty module with only HTTP/1.1 support for now (requires review of the modules to reuse them with various connectors).
* Updated documentation to mention UnixDomainServerConnector.
* Updated client libraries to support Unix-Domain.
* Updated PROXY protocol implementation to support Unix-Domain.
* Replaced unix.socket.tmp with better named jetty.unixdomain.dir property.
Defaulted jetty.unixdomain.dir property to system property user.home under Windows.
Simplified code that runs Unix-Domain tests.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-08-05 10:04:37 +02:00
Lachlan
8de7d55bd3
Merge pull request #6585 from eclipse/jetty-10.0.x-6566-WebSocketExecutor
Issue #6566 - add executor to WebSocketComponents & use for Dispatched Messages
2021-08-05 15:38:20 +10:00
Greg Wilkins
b0140dae05
Fix #6562 last written bytebuffer (#6563) (#6579)
Fixes #6562 the last written bytebuffer calculation.
Also fixed an associated issue with unnecessary flush of an empty when last calculation already signalled last.
2021-08-05 09:13:12 +10:00
Simone Bordet
266d8f0dca Fixes #6558 - Allow configuring return type in JSON array parsing.
Introduced `arrayConverter` in both JSON and AsyncJSON.Factory.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
(cherry picked from commit 342396c7ee33a4fa51e3d6b1facc5337942dc354)
2021-08-04 10:35:24 +02:00
Lachlan Roberts
edec52893b Add name on WebSocketComponents default threadpool
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-04 16:49:15 +10:00
Lachlan Roberts
316c46675e Fix WebSocketComponents LifeCycle in AbstractJavaxWebSocketFrameHandlerTest
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-04 16:19:34 +10:00
Lachlan Roberts
de8cbcf588 Fix broken tests using WebSocketComponents
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-04 15:11:35 +10:00
Lachlan Roberts
14c09e3c98 Issue #6566 - fix WebSocketComponents LifeCycle issue
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-04 13:28:10 +10:00
Lachlan Roberts
bbabaee8cc Issue #6566 - add executor to WebSocketComponents & use for Dispatched Messages
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-04 11:24:10 +10:00
Greg Wilkins
4e3e99c5c5
Fix #6565 Deploy Symlinked applications (#6567)
Fix #6565 Deploy Symlinked applications by treating extracting context name (which becomes the default context path) from the base resource and then following aliases, so that base resource will not be an alias.   Added warning in ContextHandler if the base resource is an alias that we may not support this in future releases.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2021-08-02 18:16:34 +10:00
Jan Bartel
90a72b0798
Issue #6556 Ensure context classloader set when operating on memcache. (#6557)
* Issue #6556 Ensure context classloader set when operating on memcache.

Signed-off-by: Jan Bartel <janb@webtide.com>
2021-08-02 10:04:51 +10:00
Joakim Erdfelt
409a2fc9ff
Merge pull request #6550 from eclipse/jetty-10.0.x-6544-gziphandler-excludedMimeTypes
Issue #6544 - Fixing broken `jetty.gzip.excludedMimeTypeList` property support
2021-07-30 13:47:29 -05:00
Joakim Erdfelt
dc48a4b452
Issue #6544 - Adding comment about mime-type in web.xml
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-07-30 08:56:21 -05:00
Joakim Erdfelt
d5da842ea8
Issue #6544 - Remove braces
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-07-30 07:32:19 -05:00
Joakim Erdfelt
3868360555
Issue #6544 - More updates based on review and merge
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-07-30 07:29:59 -05:00
Joakim Erdfelt
4d35dd736d
Merge remote-tracking branch 'origin/jetty-10.0.x' into jetty-10.0.x-6544-gziphandler-excludedMimeTypes 2021-07-30 07:25:18 -05:00
Joakim Erdfelt
72fc018cc5
Issue #6544 - Updates based on review
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-07-30 07:25:03 -05:00
Lachlan
55d638db01
Merge pull request #6561 from eclipse/jetty-10.0.x-CVE-2021-34429
Update VERSION.txt with CVE-2021-34429 (Jetty-10)
2021-07-30 17:47:45 +10:00
Greg Wilkins
6201d3b107
Non blocking ReservedThreadExecutor (#6535) (#6559)
A call to offer must never block, nor even yield, since to do so give an opportunity for the allocated CPU core to change, defeating the whole purpose of the class.
There is also some reasonable level of diagnostic warnings if a reserved thread misses too many offers consecutively, based on tracking the state of the reserved thread.

Remove the stack data structure entirely.  ReservedThreads all poll the same SynchronousQueue and tryExecute does a non blocking offer.

Added test for busy shrinking

Remember last time we hit zero reserved threads

Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2021-07-30 09:08:36 +10:00
Ludovic Orban
d8a890f71e #6541 improve testConcurrentAccess perf
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-07-29 11:11:54 +02:00
Ludovic Orban
9e047ab412 #6541 improve testTake perf
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-07-29 11:11:54 +02:00
Lachlan Roberts
61bcc6068e Update VERSION.txt with CVE-2021-34429.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-07-29 15:07:43 +10:00
Joakim Erdfelt
5dcc14b114
Merge pull request #6551 from eclipse/jetty-10.0.x-6545-refresh-mimetypes
Issue #6545 - Add more mime-types
2021-07-28 05:47:36 -05:00
Ludovic Orban
73ab70d174 #6491 extract common parseAndFillForContent method
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-07-28 10:14:19 +02:00
Ludovic Orban
bd11d6f682 #6491 add defensive check and introduce HttpParser.isTerminated()
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2021-07-28 10:14:19 +02:00