20445 Commits

Author SHA1 Message Date
Simone Bordet
3129202e8a Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2020-02-17 17:40:06 +01:00
Simone Bordet
01438e6f91 Code cleanup.
Changed the way the test directory was created: it was based on a
millisecond timestamp, but the tests run fast and it was possible that
two tests were creating the directory within the same millisecond.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-17 17:32:51 +01:00
Simone Bordet
f2c977d619 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2020-02-17 00:54:22 +01:00
Simone Bordet
ed7f337856 Issue #4518 - Add a mechanism that allows running multiple protocols on the same port.
Made test methods public, so that they will work fine in JDK 11 and JPMS.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-17 00:53:44 +01:00
Simone Bordet
612a70b5be Issue #4518 - Add a mechanism that allows running multiple protocols on the same port.
Fixed tests after merge.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-16 22:17:13 +01:00
Simone Bordet
b73892ccfb Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2020-02-16 19:41:49 +01:00
Simone Bordet
9f7a82b128
Merge pull request #4519 from lorban/composable-conn-factories
Fixes #4518 -  Add a mechanism that allows running multiple protocols on the same port.
2020-02-16 19:25:04 +01:00
Simone Bordet
6f211d7a34 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2020-02-16 17:29:10 +01:00
Simone Bordet
7320b1de94
Merge pull request #4576 from eclipse/jetty-9.4.x-4575-stopping-reserved-threads
Fixes #4575 Stopping Reserved Thread
2020-02-16 17:25:15 +01:00
Greg Wilkins
652428ad70 Tests #4573 X-Forwarded ordering
Added tests for header ordering
fixed cut-and-paste error of _for to _host

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-16 11:04:34 +01:00
Greg Wilkins
ab5005b9f7 Fixes #4575 Stopping Reserved Thread
Fixes #4575 Stopping Reserved Thread by removing the `isRunning` check
from `reservedWait`.  The main run loop is also simplified to improve
`isRunning` checks before the thread is put on the stack.  Javadoc
improved to explain each step.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-16 09:43:31 +01:00
Joakim Erdfelt
3f3eaf2182
Issue #4567 - StdErrLog cleanup and final Arg Throwable support
Checkstyle fixes ...
+ Log.__loggers now Log.LOGGERS
+ Log.__props now Log.PROPS
+ StdErrLog.__tagpad now StdErrLog.THREADNAME_PADDING
+ StdErrLog.__source now StdErrLog.SOURCE
+ StdErrLog.__long now StdErrLog.LONG_CLASSNAMES
+ StdErrLog.__escape now StdErrLog.ESCAPE_CONTROL_CHARS
+ Removed redundant "public" modifier on Log interface methods

New code ...
+ New Log.getProperty(String key, String defaultValue)
  Used by JavaUtilLog, JettyLogHandler, and StdErrLog
+ New StdErrLog.getConfiguredLevel()
+ New StrErrLog.println(String) used to write StringBuilder
  to configured PrintStream

Removed code ...
+ Removed deprecated prop check in StdErrLog initialization

Cleanup and Corrected code ...
+ StdErrLog.setDebugEnabled(boolean) cleanup
+ StdErrLog._stderr is now used and is never null
+ Only one StdErrLog.format() method entry point
+ StdErrLog.format(StringBuilder, Throwable) now called .formatCause(StringBuilder, Throwable, String)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-02-13 13:00:24 -06:00
Olivier Lamy
ebed3e5b38
Issue #4562 remove deprecated jetty-runner (#4563)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-02-13 11:13:20 +10:00
Lachlan
aaf6f17766
Merge pull request #4555 from eclipse/jetty-9.4.x-4537-WebSocketSpin
Issue #4537 - fix potential spin when discarding in WebSocketConnection
2020-02-13 09:14:06 +11:00
Chris Walker
3c9c506644
Removing 9.4.x references from documentation where appropriate. Resolves #3987 2020-02-12 12:44:49 -06:00
olivier lamy
d485c9e811 Merge branch 'jetty-9.4.x' into jetty-10.0.x 2020-02-12 16:36:48 +10:00
Olivier Lamy
602e700e02
use pmd plugin 3.13.0 (#4566)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-02-12 16:30:56 +10:00
Joakim Erdfelt
a1c20b6cfa
Merge pull request #4558 from eclipse/jetty-10.0.x-3924-deprecate-resource-writeto
Issue #3924 - Remove Resource.writeTo(OutputStream, long, long)
2020-02-11 14:01:43 -06:00
Lachlan
636c6047ba
Merge pull request #4564 from SerCeMan/jetty-9.4.x
Improve performance of small websocket binary messages
2020-02-11 00:40:27 +11:00
Sergey Tselovalnikov
66f4bda2ea comments
Signed-off-by: Sergey Tselovalnikov <sergeicelov@gmail.com>
2020-02-10 21:02:36 +11:00
Sergey Tselovalnikov
d371c1498c Improve performance of small websocket messages
Signed-off-by: Sergey Tselovalnikov <sergeicelov@gmail.com>
2020-02-10 20:07:33 +11:00
Lachlan Roberts
20621b76fb Issue #4537 - fix potential spin when discarding in WebSocketConnection
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-02-10 18:29:55 +11:00
olivier lamy
65a39b4454 we do not need javadoc neither sources jar for examples
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-02-10 11:04:18 +10:00
Olivier Lamy
abdb9f2ff6
Jetty 10.0.x methodhandles lookup linkage (#4552)
* use a lookup dedicated to the target class (webapp classloader) to avoid collision with server classloader

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* cleanup war test dependencies

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* remove empty lines

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* make it clear it is a bad websocket webapp only for testing purpose and add a good websocket webapp

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* no need anymore of this dependency

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-02-09 11:59:57 +10:00
Joakim Erdfelt
e363997432
Issue #3924 - Remove Resource.writeTo()
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-02-07 12:21:23 -06:00
Simone Bordet
8b1a669e65 Issue #2788 - Graceful close of HTTP/2 Connection.
Updates after review.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-07 17:56:34 +01:00
Lachlan
e4c1984fd0
Merge pull request #4536 from eclipse/jetty-10.0.x-4447-websocketModules
Issue #4447 - separate modules for jetty and javax websockets
2020-02-07 16:15:27 +11:00
Lachlan Roberts
b3144dd401 Issue #4447 - update websocket-jetty module description
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-02-07 16:14:32 +11:00
Greg Wilkins
f50c2654b9 Fixes #4541 Large Headers
Added a HEADER_OVERFLOW result as per review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-06 21:17:58 +01:00
Greg Wilkins
2c8d405b83 Fixes #4550 XmlConfiguration named parameters
Do not match a missing varArgs executable is there is a matching method with no varArgs.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-06 18:55:42 +01:00
Simone Bordet
92d9d46f8e Fixes #2788 - Graceful close of HTTP/2 Connection.
Made HTTP2SessionContainer implement Graceful, so that it can be found
in the component hierarchy and can shutdown all sessions.
Modified HTTP2ServerSession to reject requests if already closed/shutdown.
Implemented shutdown in HTTP2Session.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-06 16:32:50 +01:00
Simone Bordet
8197c12325 Code cleanup.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-06 16:32:19 +01:00
Greg Wilkins
d27f4ee556 Fixes #4550 XmlConfiguration named parameters
Fixed #4550 named parameters with a moderate refactor.
The named parameter matching was duplicated, only considering number of args and not applied to call arguments.    This refactor puts all the behaviour in common methods and reorders the arguments to match parameters.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-06 14:11:58 +01:00
Simone Bordet
5f118a0941
Merge pull request #4543 from eclipse/jetty-10.0.x-3953-client_direct_heap_bytebuffers
Fixes #3953 - Client configuration for direct/heap ByteBuffers.
2020-02-06 10:44:21 +01:00
Ludovic Orban
386d9348ca Use contants for CR and LF fields index
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-02-06 10:06:33 +01:00
Greg Wilkins
1b59e42294 Issue #4541 Large response header
Fix #4541 by initially allocated a header buffer of `min(_config.getResponseHeaderSize(), _config.getOutputBufferSize())`
Only allocate a buffer of `getResponseHeaderSize` if an overflow results.

This should have no effect on the majority of responses where `getOutputBufferSize` is greater than `getResponseHeaderSize` other than the cost of a min operation.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-05 10:29:41 +01:00
Simone Bordet
4fbbaf8b8e Fixes #3953 - Client configuration for direct/heap ByteBuffers.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-02-05 09:49:44 +01:00
Lachlan
41a7b8d4e3
Merge pull request #4539 from eclipse/jetty-10.0.x-4501-SharedBlockingCallback
Issue #4501 - remove all SharedBlockingCallback usage from websocket
2020-02-05 10:07:12 +11:00
Greg Wilkins
13458ab515 Fixed bad format
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-02-04 16:29:58 +01:00
Ludovic Orban
5df1ad9b66 change the format of detector's generated protocol name
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-02-04 12:42:35 +01:00
Ludovic Orban
58b1db610c detectAndUpgrade() shortcut on empty buffer
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-02-04 10:49:27 +01:00
Ludovic Orban
37edc016d2 improve debug logs
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-02-04 09:21:41 +01:00
Ludovic Orban
75b4719592 Implement detector connection factory with protocol detection mechanism
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-02-03 16:56:53 +01:00
Lachlan Roberts
cbb09413fd Issue #4501 - fix test expectations to throw CloseChannelException
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-02-03 18:34:19 +11:00
Lachlan Roberts
3344772e2f Issue #4447 - hard code in version for javax-websocket-api 1.1.2
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-02-03 18:29:46 +11:00
Lachlan Roberts
182daf8504 Issue #4501 - remove all SharedBlockingCallback usage from websocket
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-02-03 17:20:45 +11:00
Lachlan
f8219a56cc
Merge pull request #4535 from eclipse/jetty-10.0.x-4462-javaxWSClose
Issue #4462 - do not throw IOException on Javax websocket close
2020-02-03 10:22:23 +11:00
Jan Bartel
fe8b11dd48 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-02-01 11:27:09 +01:00
Jan Bartel
ecd0fe97f7
Issue #4520 Reinstate throw of UnreadableSessionDataException (#4528)
* Issue #4520 Reinstate throw of UnreadableSessionDataException

Signed-off-by: Jan Bartel <janb@webtide.com>
2020-02-01 11:13:58 +01:00
Greg Wilkins
4dbf8a3a9e
Issue #4495 ReservedThreadExecutor optimise (#4499)
* Issue #4495 ReservedThreadExecutor optimise

Use synchronousQueue for task handoff

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Issue #4495 ReservedThreadExecutor optimise

updates from review

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Issue #4495 ReservedThreadExecutor optimise

Use a linked queue rather than a deque(as a stack).  This should be simpler, better optimised and less contended.  Idling has been simplified so that a reserve thread is always dropped every idle period.

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Issue #4495 ReservedThreadExecutor optimise

reverted RTE and added a JMH benchmark

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* More variants and longer tests

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Added LQ

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* removed SQ2

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Issue #4495 ReservedThreadExecutor optimise

Replaced real implementation with SQ

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Issue #4495 RTE optimise

Removed alternate implementations

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* Issue #4495 RTE optimise

updates from review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-01-31 19:54:44 +01:00