Commit Graph

2819 Commits

Author SHA1 Message Date
Simone Bordet 4b7ba20aae Fixes #3929 - Deadlock between new HTTP2Connection() and Server.stop().
Updated code after review.
Now a managed failed bean is restarted if its container is restarted.
Added more test cases.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-07 10:44:04 +02:00
Simone Bordet 1fd24b3fca Fixes #3940 - Double initialization of Log.
Removed LOG field, it was used improperly (log and rethrow)
and it's now unnecessary.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-07 10:04:52 +02:00
Simone Bordet 632e9c57a8 Fixes #3940 - Double initialization of Log.
Restructured the class and cleaned up the code.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-07 10:04:07 +02:00
Simone Bordet 689e6d71a2 Fixes #3940 - Double initialization of Log.
Removed usage of StringUtil.
Moved fields together at top of the class to avoid
class initialization ordering issues.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-07 09:59:23 +02:00
Simone Bordet f484b83c2e Fixes #3929 - Deadlock between new HTTP2Connection() and Server.stop().
Added test case.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-06 11:50:29 +02:00
Simone Bordet 6c1b5982a5 Fixes #3929 - Deadlock between new HTTP2Connection() and Server.stop().
Previously beans were started if they were not running, which
included them being in a STOPPING state.
Now beans are only started if they are in STOPPED state.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-05 21:08:55 +02:00
Simone Bordet 2488c9611f Merged branch 'jetty-9.4.x' into 'jetty-9.4.x-3856-maxForm_contentLength_behavior'. 2019-08-02 19:13:35 +02:00
Simone Bordet 42815a781b Fixes #3856 - Different behaviour with maxFormContentSize=0 if Content-Length header is present/missing.
Updated code to reflect reviews.
Now lookup of system properties and server attributes is done in
ContextHandler.doStart(), so that the getter always return the
actual value (and this is good for JMX too).

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-08-02 19:12:49 +02:00
Joakim Erdfelt c2f76a6be5 Issue #3906 - Handling SeekableByteChannel.setPosition() Exception
+ UnsupportedOperationException now triggers a fallback seek mode

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-31 14:36:16 -05:00
Olivier Lamy 6b07bd23c8
Issue #3918 use Jetty version from pom if not found (#3919)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-07-31 20:11:20 +10:00
Joakim Erdfelt 95298d89e9
Merge pull request #3910 from eclipse/jetty-9.4.x-3840-pathresource-byterange
Issue #3840 Static resource byte-range support performance
2019-07-30 20:04:06 -05:00
Joakim Erdfelt dc4b7b1791
Merge pull request #3889 from eclipse/jetty-9.4.x-3888-huge-resources
Issue #3888 - Huge file Resources behaviors
2019-07-30 20:03:34 -05:00
Joakim Erdfelt 7a867c0ff0 Issue #3840 - Applying ByteBuffer niggle from PR review
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-30 19:59:49 -05:00
Joakim Erdfelt 43f9553a5e Issue #3840 - Adding more robust PathResource.writeTo()
+ Using techniques from SeekableByteChannelRangeWriter
  with variant for -1 count parameter

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-30 17:12:07 -05:00
Joakim Erdfelt fd9ec22876 Issue #3840 - Adding Default FileSystem check to PathResource
+ Construction of PathResource now tests if path belongs
  to the Default FileSystem or not.  This important info
  for later actions against the PathResource that would
  need to know the File object for the Path object.
  Non-Default FileSystem == null
  Default FileSystem == Path.toFile()

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-30 13:58:09 -05:00
Joakim Erdfelt 8601baa3cc Issue #3804 - PathResource should not use SPARSE hint always
+ SPARSE hint only applies to real os file systems or
  default file systems, not for all file systems.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-26 13:32:03 -05:00
Joakim Erdfelt e5bce5f7cd Issue #3840 - Static resource byte-range support performance
+ Reverting toFile().getInputStream() on PathResource
+ Adding RangeWriter concept for managing open resource
  across multiple range writes
+ RangeWriter implementation delegates to HttpContent behaviors
  Lookup is :
  - Direct Buffer
  - Indirect Buffer
  - ReadableByteChannel (as SeekableByteChannel)
  - InputStream
+ Adding unit tests for all RangeWriter implementation to ensure
  that they behave the same way everywhere.
+ Making ResourceService use new RangeWriter implementation
+ Existing DefaultServletRangeTest still works as-is

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-26 12:36:31 -05:00
Simone Bordet 4e0e962747 Fixes #3822 - trustAll will not work on some servers.
Made TRUST_ALL_CERTS implement X509ExtendedTrustManager,
so that it does not get wrapped in sun.security.ssl.AbstractTrustManagerWrapper,
which performs additional trust checks.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-07-26 15:57:53 +02:00
Joakim Erdfelt 24b2ca4c32 Issue #3906 - Introducing Testcase to demonstrate issue
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-25 11:43:51 -05:00
Simone Bordet 2629961e74 Fixes #3856 - Different behaviour with maxFormContentSize=0 if Content-Length header is present/missing.
Changes after review.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-07-23 22:01:13 +02:00
Simone Bordet d939c9435a Fixes #3856 - Different behaviour with maxFormContentSize=0 if Content-Length header is present/missing.
Fixed zero checks and exception messages.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-07-23 15:44:08 +02:00
Joakim Erdfelt 36294ef0da Issue #3888 - Fixing for truncated long to int
+ Allowing CachedHttpContent._contentLengthValue actually hold
  the `long` resource size (for the 4G variant on test)
+ Allowing BufferUtil to not throw Exception if resource length
  is a positive value, but exceeds Integer.MAX_VALUE, opting instead
  to return a null to prevent excessive memory usage. (fixes the 10G
  variant of test)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-07-18 12:13:35 -05:00
Olivier Lamy 433709a977
fix modifier order (#3859)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-07-09 17:51:05 +10:00
Lachlan Roberts 50c18798ba Merge remote-tracking branch 'eclipse/jetty-9.4.x' into jetty-9.4.x-300-CompressionPool
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-07-04 10:19:54 +10:00
Jan Bartel bb7fb48f08
Fix checkstyle warnings for tests. (#3846)
Signed-off-by: Jan Bartel <janb@webtide.com>
2019-07-03 16:42:20 +02:00
Greg Wilkins f84337d5b2
Issue #3840 Slow skip for PathResource (#3845)
Reverted to use FileInputStream

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-07-03 11:48:49 +02:00
Greg Wilkins 5c91e44eaf
Issue #3700 better handling of null location (#3837)
Issue #3700 if a location is null then consider if there are inclusions and/or exclusions when matching a class.
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-07-03 11:48:09 +02:00
Greg Wilkins 21857f0b81 fixed checkstyle disable style
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-07-03 08:33:13 +02:00
Lachlan Roberts 325a084422 Issue #300 - improvements to CompressionPool
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-07-03 11:51:05 +10:00
Greg Wilkins 89e756a21e Fix checkstyle warnings
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-07-02 13:20:48 +02:00
Greg Wilkins a42ad99871 Misc minor checkstyle fixes
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-06-25 11:13:34 +02:00
Lachlan Roberts 2cf0c8aeb8 Merge remote-tracking branch 'jetty-9.4.x' into jetty-9.4.x-300-CompressionPool
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-25 10:21:43 +10:00
Greg Wilkins 9706d70484
Jetty 9.4.x reformat (#3811)
* Removing Legacy Method Separators
* Restyling branch `jetty-9.4.x`
* Applying changes highlighted by checkstyle
* Applying XML restyling
* Fixing XML codestyle for IntelliJ
* Fixing XML style mistakes
* Revert "Applying XML restyling"
* Updating checkstyle for XML codestyle
* Reformatting pom.xml files
* Fixed empty string from line wraps
* Update intellij style to not do expression relative formatting. Reformatted code based on that.
* Increasing line split on Eclipse IDE Formatter to 512
* Restoring setting on internal default value.
+ IntelliJ will not export settings on things that set to their
  internal default values.
  We want to keep those values as a hedge against future default
  value changes in future releases of IntelliJ.
* Fixing intellij codestyle
* do not allow single line simple methods
* misc checkstyle fixes
* re-exported with correct name and all values

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-06-24 17:40:30 +02:00
Joakim Erdfelt 1118750139 Issue #3700 - Fixing bad ClasspathPatternTest assumptions
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-06-21 06:55:59 -05:00
Joakim Erdfelt 075333a627 Merge `jetty-9.4.x` into `jetty-9.4.x-3700-felix-webapp-testing`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-util/src/main/java/org/eclipse/jetty/util/TypeUtil.java
2019-06-20 15:37:48 -05:00
Joakim Erdfelt 8d59302978 Issue #3700 - Reworking getLocationOfClass()
+ Reverting commit against IncludeExcludeSet
+ TypeUtil.getLocationOfClass is now MethodHandle based
+ new ModuleLocation class provides Module behaviors for Java 9+
  Runtimes, and is used by new MethodHandle based getLocationOfClass
+ Jetty 10 doesn't need reflect complexity of ModuleLocation class
  and can be inlined as real code in TypeUtil
+ TypeUtil.getLocationOfClass is only guaranteed to return the
  URI to the container holding the location of the class, or null.
  - The JAR file - most common
  - The Directory - 2nd most common - a classpath dir entry
  - The jrt:// module reference - if a module reference
+ URLResource support for results of getLocationOfClass is deprecated
  (nothing was using it anyway)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-06-20 15:35:10 -05:00
Lachlan Roberts e67532372c Issue #300 - ensure Sessions are stopped before CompressionPools
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-20 09:09:20 +10:00
Joakim Erdfelt 5eb3e73400 Issue #3700 - Fixing TypeUtil and IncludeExcludeSet to work with null location
+ TypeUtil.getLocationOfClass() respects Class.getClassLoader() of null
  which means a class belonging to Boot ClassLoader, a Primitive, Void,
  or a dynamic in-memory class.  Using system classloader is incorrect
  and invalid in Java 9+
+ Fixing IncludeExcludeSet.test() to always return TRUE or FALSE
  never null.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-06-18 11:03:06 -05:00
Greg Wilkins cd38756ef5 fixed formatting from merge
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-06-18 09:51:54 +02:00
Greg Wilkins 862e6d008e
Jetty 9.4.x 3755 annotation/jndi example cleanup (#3763)
* Issue #3755 Annotation example cleanup

+ Created JettyDistribution class as common utility to locate a jetty distribution for examples.
+ Fixed ServerWithAnnotations to correctly use the test-spec-webapp
+ Added AttributeContainerMap as a better way to treat attribute values as beans. This avoids them appearing twice in a dump and always associates them with their key.
+ Added NamingDump and use it in EnvConfiguration and jetty-plus.xml so that a server dump will contain dumps of the server local tree and each contexts java:comp/env tree
+ Improved the dump format of NamingContext and WebAppContext
+ Improved the toString format of several associated classes

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-06-18 09:50:18 +02:00
Lachlan 275f83c1d0
Issue #3785 - fix failures in QTP testLifeCycleStop (#3788)
make sure the jobs are actually run before calling QTP.stop()

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-18 16:01:09 +10:00
Lachlan Roberts 30dc103a12 Issue #300 - manage deflater/inflater pools with ContainerLifeCycle
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-18 12:31:25 +10:00
Joakim Erdfelt f05d6cf9ad Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-300-CompressionPool 2019-06-14 08:38:08 -05:00
Lachlan Roberts c30c335df3 Issue #300 - shared Inflater/Deflater pools for WebSocket
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-14 16:20:00 +10:00
Joakim Erdfelt 40e9e053b9
Merge pull request #3768 from eclipse/jetty-9.4.x-3708-stringutil-replace
Issue #3708 - use StringUtil alternatives for known slow JVM impls.
2019-06-13 14:01:35 -05:00
Joakim Erdfelt 877815e195 Issue #3708 - Adding new methods and converting codebase to use them
+ StringUtil.replace(String, char, char)
+ StringUtil.strip(String, String)
+ URIUtil.encodeSpecific(String, String)
+ URIUtil.decodeSpecific(String, String)
+ TypeUtil.toClassReference(Class)
+ TypeUtil.toClassReference(String)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-06-12 09:56:41 -05:00
Lachlan Roberts e8115268d4 Issue #300 - rework of inflater and deflater pools
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-12 14:21:40 +10:00
Joakim Erdfelt 33fe55c339 Issue #3708 - use StringUtil alternatives for known slow JVM impls.
+ StringUtil.replace()
+ StringUtil.replaceFirst()
+ StringUtil.sanitizeFileSystemPath()

Change existing usages of String.replace() to either
use new StringUtil.replace() or other methods elsewhere
that better suit that specific need.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-06-11 11:25:50 -05:00
Joakim Erdfelt ae21126cad Updating to version 9.4.20-SNAPSHOT 2019-06-10 13:40:17 -05:00
Joakim Erdfelt afcf563148 Updating to version 9.4.19.v20190610 2019-06-10 11:17:56 -05:00
Simone Bordet 5b5848eb73
Merge pull request #3716 from eclipse/jetty-9.4.x-log-condense-improvement
Issue #3715 - Improve Log condensePackageString() performance
2019-06-06 22:48:25 +02:00
Olivier Lamy 8f4cdf1c83
upgrade log4j2 version and fix log4j2.xml provided sample (#3721)
* upgrade log4j2 version and fix log4j2.xml provided sample, add disruptor if users wants to use async logging

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-06-06 20:44:41 +10:00
Jan Bartel 2c634e9125
Remove jetty-util transitive OSGi dependency on servlet-api #3726 (#3741)
Issue #3726 Remove osgi uses clause for deprecated MultiPartInputStreamParser.

Signed-off-by: Jan Bartel <janb@webtide.com>
2019-06-05 23:51:03 +02:00
Joakim Erdfelt 4e00f88946 Issue #3715 - Improve Log condensePackageString() performance
+ Removed regex usage
+ More unit tests
+ Adding jmh test for improvements (see PR #3716 for published results
  of old vs new implementation)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-05-31 10:57:38 -05:00
Simone Bordet fe94da9e46 Issue #3713 - Emit warning when invoking deprecated method in Jetty XML.
Added warnings for invocation of deprecated constructors and methods.
Moved methods exclusively used by XmlConfiguration from TypeUtil.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-05-30 22:27:27 +02:00
Greg Wilkins 0c61ec3e4d
Fix idle race by allowing idle count to go negative (#3694)
* Fix idle race by allowing idle count to go negative
* Fixed flakey dump test
* don't exit Runner on exceptions
* cleanup after pair programming with sbordet
* longer benchmark runs
* optimized by removing need to check isRunning

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

* Code reformatting.
* Fixed stop logic.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-05-29 17:24:01 +02:00
Michael Hausegger a3b755858d Added additional Unit Tests to increase code coverage (#3692)
* Added additional Unit Tests to increase code coverage

Signed-off-by: Michael Hausegger <hausegger.michael@googlemail.com>
2019-05-24 16:24:40 +10:00
Olivier Lamy f2c59a3cb7
add convenient StringUtil isEmpty method (#3687)
* add StringUtil.isEmpty

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-05-23 09:01:36 +10:00
Simone Bordet fd542c2856
Merge pull request #3591 from eclipse/jetty-9.4.x-3550-QueuedThreadPool-cleanup
Jetty 9.4.x 3550 queued thread pool cleanup
2019-05-22 18:18:49 +02:00
Simone Bordet b70d22fee8 Issue #3550 - QueuedThreadPool cleanup.
Improved code formatting.
Removed unnecessary code in doStop().
Now explicitly checking whether idleTimeout > 0 before shrinking.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-05-22 18:17:44 +02:00
Joakim Erdfelt 73d7eaaba3 Issue #2909 - Replace B64Code with java.util.Base64
+ Address Mime Encoding behavior difference detected in testcase

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-05-15 10:08:11 +02:00
Joakim Erdfelt b44ecc932a Issue #2909 - Replace B64Code with java.util.Base64
+ Deprecated B64Code
+ All code that isn't B64CodeTest is now using java.util.Base64
+ B64CodeTest is updated to confirm change to java.util.Base64
  is possible without change in behavior. Just have to make
  sure you use the appropriate Encoder / Decoder for the task
  at hand (default vs mime vs url)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-05-15 10:08:11 +02:00
Joakim Erdfelt 09a60cd4f3 Issue #3630 - more HostPort tests
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-05-14 17:08:01 +02:00
Greg Wilkins 05072b34dc Issue #3630 Forwarded-Port
Added support for the X-Forwarded-Port header.
Reimplemented header scanning using more efficient Trie and MethodHandles

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-14 17:08:01 +02:00
Greg Wilkins 715939217f Fixed reserved thread default
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-09 16:27:00 +02:00
Greg Wilkins 4dd76fc092 Issue #3550 Cleanup QTP after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-08 14:28:20 +02:00
Greg Wilkins 16b73e55bc Merge branch 'jetty-9.4.x' into jetty-9.4.x-3550-QueuedThreadPool-cleanup 2019-05-08 14:23:30 +02:00
Simone Bordet e45c176649 Fixes #3628 - NPE in QueuedThreadPool.getReservedThreads().
Added guard to avoid NPE.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-05-07 12:53:15 +02:00
Greg Wilkins 6c6646286d cleanup after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-03 15:25:05 +02:00
Greg Wilkins 604f2379bd cleanup dumps from review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-03 15:25:05 +02:00
Greg Wilkins aafb0fcec1 simplification after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-03 15:25:05 +02:00
Greg Wilkins 1a76d487cc improved names and javadoc
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-03 15:25:05 +02:00
Greg Wilkins feb0333844 Fixed IncludeExclude combination logic
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-03 15:25:05 +02:00
Greg Wilkins 8b5f0211a8 parameterize include and exclude
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-03 15:25:05 +02:00
Joakim Erdfelt 41ab9baf8c Standardizing on hamcrest Matchers (not CoreMatchers from junit4)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-30 14:39:57 -05:00
Joakim Erdfelt df716e1b23 Migrating away from junit5 deprecated isIn() to is(in())
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-30 12:33:28 -05:00
Joakim Erdfelt 2b93a4e7ea Updating jetty-test-helper + junit5 + hamcrest
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-30 12:23:55 -05:00
Joakim Erdfelt 734be56938 Updating to version 9.4.19-SNAPSHOT 2019-04-29 16:27:23 -05:00
Joakim Erdfelt e1bc35120a Updating to version 9.4.18.v20190429 2019-04-29 15:40:33 -05:00
Greg Wilkins f1d598acc6 Issue #3582 Fix toDetailString buffer modify
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-29 16:59:26 +02:00
Greg Wilkins 5496f72a59 set reserved thread idle timeout
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-29 16:33:08 +02:00
Jan Bartel ab174d1015
Issue #3597 Fix session persistence classloading for deep structures (#3602)
* Issue #3597 Fix session persistence classloading for deep structures with system classes.
2019-04-29 12:05:34 +02:00
Greg Wilkins 2562500c7b Merge branch 'jetty-9.4.x' into jetty-9.4.x-3550-QueuedThreadPool-cleanup 2019-04-29 07:42:06 +02:00
Greg Wilkins 3c51304b08 updates from review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-29 07:41:59 +02:00
Joakim Erdfelt 29b960551f Merge branch `release-9.4.17` into `jetty-9.4.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-bom/pom.xml
2019-04-25 09:15:42 -05:00
Greg Wilkins 3fd486737e Improve #3550 Use a TriInteger for larger range of threads
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-25 12:50:05 +02:00
Greg Wilkins 704a97a6d2 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-3550-QueuedThreadPool-cleanup 2019-04-25 06:53:07 +02:00
Greg Wilkins a3f6d3aeb6 Improve #3550 cleanup after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-25 06:26:02 +02:00
Greg Wilkins ae2addc70a Issue #3550
Ensure that new threads are started if a thread exits due to failure.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-25 06:26:02 +02:00
lachan-roberts 42f2315518 Issue #3550 - start new thread on execute if there are no idle threads
previously if there were no idle threads, QueuedThreadPool.execute()
would just queue the job and not start a new thread to run it

Signed-off-by: lachan-roberts <lachlan@webtide.com>
2019-04-25 06:26:02 +02:00
Greg Wilkins 438f0b86a3 Issue #3550
Fixed QueuedThreadPool dump of known threads

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-25 06:26:02 +02:00
Greg Wilkins ad40ba36a8 Merge branch 'jetty-9.4.x-3550-QueuedThreadPool-stalled' into jetty-9.4.x-3550-QueuedThreadPool-cleanup 2019-04-25 06:25:28 +02:00
Greg Wilkins a8b4ee3ed2 Merge branch 'jetty-9.4.x' into jetty-9.4.x-3550-QueuedThreadPool-stalled 2019-04-25 06:24:01 +02:00
Jan Bartel 41f9d7a95d Issue #3597 NPE in DumpableCollection
Signed-off-by: Jan Bartel <janb@webtide.com>
2019-04-25 06:16:51 +02:00
Greg Wilkins c66957867b Improve #3550 cleanup after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-25 06:13:30 +02:00
Greg Wilkins 787380a91e Improve #3550 fix with a single Atomic
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-24 22:20:32 +02:00
Greg Wilkins c4d51b09df Issue #3550
Ensure that new threads are started if a thread exits due to failure.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-24 11:42:23 +02:00
lachan-roberts f69de3372e Issue #3550 - start new thread on execute if there are no idle threads
previously if there were no idle threads, QueuedThreadPool.execute()
would just queue the job and not start a new thread to run it

Signed-off-by: lachan-roberts <lachlan@webtide.com>
2019-04-24 11:11:21 +02:00
Greg Wilkins 561ea0dafb Issue #3550
Fixed QueuedThreadPool dump of known threads

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-24 09:33:14 +02:00
Joakim Erdfelt 05bb111580 Updating to version 9.4.18-SNAPSHOT 2019-04-18 15:59:49 -05:00
Joakim Erdfelt aa1c656c31 Updating to version 9.4.17.v20190418 2019-04-18 14:44:28 -05:00
Joakim Erdfelt 5882d63ba7 Updating to version 9.3.28-SNAPSHOT 2019-04-18 13:54:17 -05:00
Joakim Erdfelt d3e249f869 Updating to version 9.3.27.v20190418 2019-04-18 13:10:03 -05:00
Joakim Erdfelt 2c14d93885 Updating to version 9.2.29-SNAPSHOT 2019-04-18 12:17:07 -05:00
Joakim Erdfelt 1dffa36fe3 Updating to version 9.2.28.v20190418 2019-04-18 11:23:17 -05:00
Joakim Erdfelt c75136fe63 Merge branch 'release-9.4.16' into jetty-9.4.x 2019-04-18 10:13:20 -05:00
Joakim Erdfelt 2995029c98 Merge branch `jetty-9.3.x` into `jetty-9.4.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java
#	jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
#	pom.xml
2019-04-17 17:10:53 -05:00
Joakim Erdfelt 3d028ab2ca Issue #3549 - Using FileName properly in Directory Listings.
+ Even though this was reported against Windows, the solution
  implemented should be sane for all OS or FileSystem combinations.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-15 18:05:48 -05:00
Joakim Erdfelt 7b774d82e8 Issue #3549 - Using FileName properly in Directory Listings.
+ Even though this was reported against Windows, the solution
  implemented should be sane for all OS or FileSystem combinations.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-15 18:01:41 -05:00
Simone Bordet 3f0ec633a1 Issue #3464 - Split SslContextFactory into Client and Server
Fixed instanceof check to maintain backwards compatibility.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-15 15:57:37 +02:00
Joakim Erdfelt 79537a5f51 Updating to version 9.4.17-SNAPSHOT 2019-04-11 11:00:24 -05:00
Joakim Erdfelt e0aa4ae4c0 Updating to version 9.4.16.v20190411 2019-04-11 10:01:26 -05:00
Joakim Erdfelt 20343ba7cb
Merge pull request #3542 from eclipse/jetty-9.4.x-issue-3540-ssl-provider-consistency
Issue #3540 - Use configured Security Provider consistently
2019-04-10 08:16:03 -07:00
Joakim Erdfelt 1532eba61d Issue #3319 - Fixing sorting of listings
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-10 10:15:21 -05:00
Joakim Erdfelt 0efa519553 Issue #3540 - Use configured Security Provider consistently
+ If optional Security Provider is configured, then use it consistently
  for all security objects that take a Provider argument.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-10 08:22:16 -05:00
bkmz e41906fbdb Bug and build fixes:
- Fixes deflater/inflater pool validation
- Removes validation tests of Flators for pool
- Eroding pool usage; fixes cleanup of Deflaters

Signed-off-by: bkmz <ilya.cherkasov@gmail.com>
2019-04-07 21:23:31 +03:00
Simone Bordet 97d501d444 Merged branch 'jetty-9.4.x' into 'jetty-9.4.x-3361-thread-safe-setHandlers'. 2019-04-05 08:47:34 +02:00
Simone Bordet a982422b40 Issue #3494 - QueuedThreadPool bug - jobs disappearing on lifecycle stop.
Small fixes after review.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-05 08:36:18 +02:00
Simone Bordet 3dd58fae22
Merge pull request #3520 from lachlan-roberts/jetty-9.4.x-queuedThreadPoolBug
QueuedThreadPool bug - jobs disappearing on lifecycle stop #3494
2019-04-05 08:32:22 +02:00
Greg Wilkins db60003099 Issue #3481 TLS Close
Updates from review:
 - cleanup isEmpty logic

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-05 17:20:43 +11:00
Greg Wilkins 33e3894796 Issue #3481 TLS Close
Updates from review:
 - shutdown after flush
 - close if write fails

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-04-05 17:20:43 +11:00
Joakim Erdfelt 9b19374c5d Updating to version 9.2.28-SNAPSHOT 2019-04-03 19:38:05 -05:00
olivier lamy ebd676df5d fix header
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-04-04 10:16:56 +10:00
Joakim Erdfelt 84dfe74b97 Updating to version 9.2.27.v20190403 2019-04-03 19:04:45 -05:00
Lachlan Roberts 1097354611 Issue #3494 - QueuedThreadPool changes from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-04-04 10:46:54 +11:00
Joakim Erdfelt c70034766e Updating to version 9.3.27-SNAPSHOT 2019-04-03 18:46:31 -05:00
Joakim Erdfelt dae476e369 Updating to version 9.3.26.v20190403 2019-04-03 18:16:32 -05:00
Joakim Erdfelt 2ccde9772b Undoing bad release-9.3.26 2019-04-03 18:11:16 -05:00
Joakim Erdfelt 5665bde3dd Merge branch `jetty-9.3.x` into `jetty-9.4.x` 2019-04-03 18:08:56 -05:00
Joakim Erdfelt 954a8bd6a3 Fixing bad merge of Resource.java
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-03 18:08:36 -05:00
Joakim Erdfelt 7478c04351 Merge branch `jetty-9.3.x` into `jetty-9.4.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	Jenkinsfile
#	VERSION.txt
#	aggregates/jetty-all-compact3/pom.xml
#	aggregates/jetty-all/pom.xml
#	apache-jsp/pom.xml
#	apache-jstl/pom.xml
#	examples/async-rest/async-rest-jar/pom.xml
#	examples/async-rest/async-rest-webapp/pom.xml
#	examples/async-rest/pom.xml
#	examples/embedded/pom.xml
#	examples/pom.xml
#	jetty-alpn/jetty-alpn-client/pom.xml
#	jetty-alpn/jetty-alpn-java-client/pom.xml
#	jetty-alpn/jetty-alpn-java-server/pom.xml
#	jetty-alpn/jetty-alpn-server/pom.xml
#	jetty-alpn/pom.xml
#	jetty-annotations/pom.xml
#	jetty-ant/pom.xml
#	jetty-bom/pom.xml
#	jetty-cdi/cdi-core/pom.xml
#	jetty-cdi/cdi-full-servlet/pom.xml
#	jetty-cdi/cdi-servlet/pom.xml
#	jetty-cdi/cdi-websocket/pom.xml
#	jetty-cdi/pom.xml
#	jetty-cdi/test-cdi-webapp/pom.xml
#	jetty-client/pom.xml
#	jetty-continuation/pom.xml
#	jetty-deploy/pom.xml
#	jetty-distribution/pom.xml
#	jetty-documentation/pom.xml
#	jetty-fcgi/fcgi-client/pom.xml
#	jetty-fcgi/fcgi-server/pom.xml
#	jetty-fcgi/pom.xml
#	jetty-gcloud/jetty-gcloud-memcached-session-manager/pom.xml
#	jetty-gcloud/jetty-gcloud-session-manager/pom.xml
#	jetty-gcloud/pom.xml
#	jetty-hazelcast/pom.xml
#	jetty-http-spi/pom.xml
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpContext.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java
#	jetty-http/pom.xml
#	jetty-http2/http2-alpn-tests/pom.xml
#	jetty-http2/http2-client/pom.xml
#	jetty-http2/http2-common/pom.xml
#	jetty-http2/http2-hpack/pom.xml
#	jetty-http2/http2-http-client-transport/pom.xml
#	jetty-http2/http2-server/pom.xml
#	jetty-http2/pom.xml
#	jetty-infinispan/pom.xml
#	jetty-io/pom.xml
#	jetty-jaas/pom.xml
#	jetty-jaspi/pom.xml
#	jetty-jmx/pom.xml
#	jetty-jndi/pom.xml
#	jetty-jspc-maven-plugin/pom.xml
#	jetty-maven-plugin/pom.xml
#	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java
#	jetty-monitor/pom.xml
#	jetty-nosql/pom.xml
#	jetty-osgi/jetty-osgi-alpn/pom.xml
#	jetty-osgi/jetty-osgi-boot-jsp/pom.xml
#	jetty-osgi/jetty-osgi-boot-warurl/pom.xml
#	jetty-osgi/jetty-osgi-boot/pom.xml
#	jetty-osgi/jetty-osgi-httpservice/pom.xml
#	jetty-osgi/pom.xml
#	jetty-osgi/test-jetty-osgi-context/pom.xml
#	jetty-osgi/test-jetty-osgi-fragment/pom.xml
#	jetty-osgi/test-jetty-osgi-webapp/pom.xml
#	jetty-osgi/test-jetty-osgi/pom.xml
#	jetty-plus/pom.xml
#	jetty-proxy/pom.xml
#	jetty-quickstart/pom.xml
#	jetty-rewrite/pom.xml
#	jetty-runner/pom.xml
#	jetty-security/pom.xml
#	jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java
#	jetty-server/pom.xml
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java
#	jetty-servlet/pom.xml
#	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-servlets/pom.xml
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ThreadStarvationTest.java
#	jetty-spring/pom.xml
#	jetty-start/pom.xml
#	jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java
#	jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java
#	jetty-util-ajax/pom.xml
#	jetty-util/pom.xml
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
#	jetty-webapp/pom.xml
#	jetty-websocket/javax-websocket-client-impl/pom.xml
#	jetty-websocket/javax-websocket-server-impl/pom.xml
#	jetty-websocket/pom.xml
#	jetty-websocket/websocket-api/pom.xml
#	jetty-websocket/websocket-client/pom.xml
#	jetty-websocket/websocket-common/pom.xml
#	jetty-websocket/websocket-server/pom.xml
#	jetty-websocket/websocket-servlet/pom.xml
#	jetty-xml/pom.xml
#	pom.xml
#	tests/pom.xml
#	tests/test-continuation/pom.xml
#	tests/test-http-client-transport/pom.xml
#	tests/test-integration/pom.xml
#	tests/test-jmx/jmx-webapp-it/pom.xml
#	tests/test-jmx/jmx-webapp/pom.xml
#	tests/test-jmx/pom.xml
#	tests/test-loginservice/pom.xml
#	tests/test-quickstart/pom.xml
#	tests/test-sessions/pom.xml
#	tests/test-sessions/test-file-sessions/pom.xml
#	tests/test-sessions/test-gcloud-sessions/pom.xml
#	tests/test-sessions/test-infinispan-sessions/pom.xml
#	tests/test-sessions/test-jdbc-sessions/pom.xml
#	tests/test-sessions/test-memcached-sessions/pom.xml
#	tests/test-sessions/test-mongodb-sessions/pom.xml
#	tests/test-sessions/test-sessions-common/pom.xml
#	tests/test-webapps/pom.xml
#	tests/test-webapps/test-jaas-webapp/pom.xml
#	tests/test-webapps/test-jetty-webapp/pom.xml
#	tests/test-webapps/test-jndi-webapp/pom.xml
#	tests/test-webapps/test-mock-resources/pom.xml
#	tests/test-webapps/test-proxy-webapp/pom.xml
#	tests/test-webapps/test-servlet-spec/pom.xml
#	tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml
#	tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml
#	tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml
#	tests/test-webapps/test-webapp-rfc2616/pom.xml
2019-04-03 17:47:18 -05:00
Joakim Erdfelt 554fc39f06 Merge branch `jetty-9.2.x` into `jetty-9.3.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java
#	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java
#	jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java
#	jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
2019-04-03 17:19:34 -05:00
Joakim Erdfelt 31b0de2285 Issue #3319 - Fixing listing output dir slash expectation from tests
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-03 17:12:26 -05:00
Joakim Erdfelt b929f5c2db Issue #3319 - Applying changes from review with @sbordet
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-03 17:01:16 -05:00
Joakim Erdfelt ca77bd384a Issue #3319 - Refactoring DefaultServlet Index/Listing
+ Now generates valid HTML5
+ Now allows column sort

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-03 16:28:26 -05:00
bkmz c14bf735a2 Compression pool for PermessageDeflate extensions for websockets
- Implements Compression Pool (based on apache Commons Pool)
- Implements Inflater Pool
- Plugs Compression Pools usage in Permessage-Deflate

Signed-off-by: bkmz <ilya.cherkasov@gmail.com>
2019-04-03 12:13:00 +03:00
Greg Wilkins 9f4b3542cb Updating to version 9.3.27-SNAPSHOT 2019-04-03 17:32:08 +11:00
Lachlan Roberts 5177abba6e close un-executed jobs on QueuedThreadPool lifecycle stop
- new testcase in QueuedThreadPoolTest
- added debug logs to QueuedThreadPool

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-04-03 14:10:43 +11:00
Greg Wilkins 7ec6d2fb32 Updating to version 9.3.26.v20190403 2019-04-03 13:06:51 +11:00
Lachlan Roberts 9cda1ce092 QueuedThreadPool bug - jobs disappearing on lifecycle stop
as the QueuedThreadPool was being stopped, jobs could be taken out of
the QueuedThreadPool job queue but then not run

also cleaned up QueuedThreadPool _runnable code to simplify it

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-04-03 10:39:10 +11:00
Simone Bordet 6fb243ff6c Issue #3464 - Split SslContextFactory into Client and Server
Introduced SslContextFactory subclasses Client and Server.
Replaced all usages of SslContextFactory with either Client or Server
as required.

Refactored configuration checking so that warnings are not emitted
when non necessary.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-03-21 14:42:42 +01:00
Greg Wilkins f2e9f2f7b3 Issue #3361 thread safe addHandler
Updates from review:
 - private fields
 - better blocker for deployment

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-21 17:11:47 +11:00
Greg Wilkins 849920ce87 Issue #3361 thread safe addHandler
Updates from review:
 - private fields

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-21 10:32:43 +11:00
Greg Wilkins 944636176f Issue #3361 thread safe addHandler
Updates from review:
 - no return from finally

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-21 10:31:08 +11:00
Greg Wilkins 265afacd3f Issue #3361 thread safe addHandler
Updates from review:
 - private fields

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-21 10:27:09 +11:00
Greg Wilkins 790dbbfaaa Issue #3361 thread safe addHandler
Updates from review:
 - private fields
 - callbacks on deploy/undeploy
 - more deprecated javadoc

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-21 10:24:14 +11:00
Simone Bordet 512886ae7f Issue #3361 thread safe addHandler
Code cleanup.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-03-20 10:51:16 +01:00
Greg Wilkins 338f56ea93 Issue #3361 thread safe addHandler
Improved names and javadoc.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-20 18:36:48 +11:00
Greg Wilkins 1accced62f Issue #3361 thread safe addHandler
Added new thread safe methods deployHandler and undeployHandler

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-20 18:18:55 +11:00
Greg Wilkins 7b407ecb6c Issue #3440 Stop failed lifecycle
stop in reverse order.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-12 22:44:12 +11:00