Commit Graph

2385 Commits

Author SHA1 Message Date
Greg Wilkins 48eebacd6c more robust test
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-28 14:28:58 +11:00
Greg Wilkins 0cb4f5629d
Jetty 9.4.x 1803 proposal 0+2 (#2199)
Merging this PR for #2199 as we currently think it is not worse than previous and the code base is definitely simpler.   While JMH has shown significant benefits for this approach, we have yet been able to demonstrate them in full scale integration tests - however that is likely due to GC and thread pool issues dominating.

A `org.eclipse.jetty.http2.PEC_MODE` System property has been added to allow the EWYK scheduling to be disabled for HTTP/2 if need be.


* Implementation of #1803 proposal 2 - EITHER dispatch type for EWYK
* made code more readable
* increase small threadpools in tests for extra reserved thread
* clean up
* minor code simplifications
* Work in progress to simplify reserved thread pool
* use a single ReservedThreadPool built into the QueuedThreadPool
* fixed javadoc
* removed more old reserved thread references
* disable EWYK for h2
* fixes from review
* use EWYK for HTTP2
* Fixed javadocs, imports and QueuedThreadPool constructors.
* fix javadoc
* EWYK avoid unnecessary pendings
* after review
* fixed merge with jetty-threadpool.xml
* alternate EWYK implementations
* added jetty copyright headers
* Simplified EWYK code after review
* fixed bad merge
* Code cleanups.
* Improved Javadocs for deprecated property "reservedThreads".
* Improved Javadocs for deprecated property "reservedThreads".
* added a system property to enable only PEC for HTTP/2

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-27 14:29:59 +11:00
Lachlan Roberts 67d12a0839 Updates from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-02-27 12:12:40 +11:00
Lachlan Roberts cf5b501254 Resolved default charset warning in jetty-util for #2206
Ignored warning in B64Code
US-ASCII in UnixCrypt

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-02-27 11:09:47 +11:00
Joakim Erdfelt 8515f809ca Fixes #2224 - windows rollover file tests 2018-02-23 14:39:34 -06:00
Greg Wilkins e46459e8a8 improve fragile tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-22 17:29:29 +11:00
Greg Wilkins 1e76caf00d removed fragile tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-22 13:58:05 +11:00
Greg Wilkins adcb2762fe Improved testShrink to be more robust to timing issues
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-22 09:53:49 +11:00
Greg Wilkins 693aa04e03
Merge pull request #2200 from olamy/feature/errorprone
[WIP] Feature errorprone compiler
2018-02-21 16:30:34 +11:00
olivier lamy 7cc1a376a3 formatting
Signed-off-by: olivier lamy <olamy@webtide.com>
2018-02-21 11:05:49 +10:00
Greg Wilkins af06fddef1 less fragile tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-20 17:36:29 +11:00
Jan Bartel df012bb0a3 Issue #2164 correct manifest headers for ServiceLoader use in osgi
Signed-off-by: Jan Bartel <janb@webtide.com>
2018-02-20 16:28:39 +11:00
Greg Wilkins 3ae713f2d4 less fragile tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-20 13:49:41 +11:00
Greg Wilkins 386dfc0331 less fragile tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-20 11:32:49 +11:00
Greg Wilkins ec51926622 reduce fragility of tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-19 19:22:32 +11:00
olivier lamy bd0b440da9 fixing one errorprone error, ATM configure it to generate warning and not errors, let see if we can collect in jenkins
Signed-off-by: olivier lamy <olamy@webtide.com>
2018-02-19 13:37:28 +10:00
David Ha a01e4a0f49 qtp constructor min-max validation
When min and max threads are passed together, verify
max >= min to detect bad configuration.

Signed-off-by: David Ha <davidha@1493.net>
2018-02-08 10:32:58 -05:00
Simone Bordet 6bbd89e5db Added NoTryExecutor.toString() for better dumps.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-08 11:11:01 +01:00
Greg Wilkins ab5fc29cca Jetty 9.4.x 1803 proposal 0 - single ReservedThreadExecutor (#2119)
Issue #1803 - Review usage of scheduling strategies

Use a single ReservedThreadExecutor built into the QueuedThreadPool
via new interface TryExecutor.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-08 11:08:48 +01:00
Joakim Erdfelt fe2be81783
Merge pull request #2149 from eclipse/jetty-9.4.x-2148-bufferutil-todetailstring
Issue #2148 - Limit BufferUtil.toDetailString() raw character display to USASCII 7-bit printable characters
2018-01-22 11:23:54 -06:00
Joakim Erdfelt 3e28e50693 Issue #2148 - Limit BufferUtil.toDetailString() raw character display to USASCII 7-bit printable characters
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-01-22 11:22:50 -06:00
Greg Wilkins e0eab58c24 Issue #1797 - JEP 238 - Multi-Release JAR files break bytecode scanning. Fixed for java 10
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-15 16:40:57 +01:00
Greg Wilkins 7138dc3828
Jetty 9.4.x #1918 scalable scheduler3 (#2101)
* Scalable scheduler changes for #1918
* Added HttpChannel.destroy to destroy CyclicTimer
* fixed rebase with HttpConnectionOverFCGI
* renamed to acquire
* Destroying the HttpChannel consistently in all transports.
* updated headers
* cleanup after final review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-10 16:56:41 +01:00
Greg Wilkins 356bf2e06f
Issue #2046 - Graceful stop of connections (#2100)
* Clean up of actions (now updates) prior to #2046 fix
* prevent exceptions from termincating lifecycle doStop or destroy
* Refactored ManagedSelector stop to always close endpoints
* Fixed NPE if SelectorManager is already stopped
* refactored after review
* further simplifications after review
* Wait only for oshut endpoints
* Cleanup from review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-09 20:36:41 +01:00
Joakim Erdfelt 21365234f8 Issue #2108 - Updating license headers for year 2018 2018-01-09 09:44:41 -06:00
Joakim Erdfelt 41ed9f29f4 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2018-01-09 09:37:25 -06:00
Joakim Erdfelt fa4c7b0ca9 Issue #2108 - Updating license headers for year 2018 2018-01-09 08:39:37 -06:00
Joakim Erdfelt 067fc5d2d8 Issue #2108 - Upgrade licenses for 2018 2018-01-09 07:42:06 -06:00
Greg Wilkins 88cf4603c5
Merge branch 'jetty-9.4.x' into bugfix/javadoc_fixes_2056 2018-01-08 21:31:48 +01:00
Greg Wilkins 26a4909c88
Use shaded utils in start for JavaVersion and TopologicalSort #2090 (#2094)
* shaded TopologicalSort. Use shaded start in jetty-home
* removed unused property
* jetty-start shaded dependency
* removed component dependencies from TopologicalSort

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-06 11:23:37 +01:00
Greg Wilkins 595c6ac1ee Issue #2090 Java Version JEP223. Use shaded util in start. 2018-01-04 13:13:39 +01:00
Greg Wilkins a107e543e6 Issue #2090 Java Version JEP223 2018-01-04 12:27:15 +01:00
Greg Wilkins 54c55b602f
ManagedSelector dump improvements from #1970 (#2062)
* ManagedSelector dump improvements from #1970

ManagedSelector dump improvements from #1970:
 + DumpKeys is now prepended to actions list so it is less likely to be delayed by a stuck/busy selector
 + Timestamps are included for actions and keys which may be separated by time
 + Race removed race for updating dumpKey list while it is being added to.

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

* moved utility timestamp format method to Log

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

* updates after review

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

* changes after review

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

* Issue #1970 - ManagedSelector dump improvements.

Code cleanups.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Revert "Issue #1970 - ManagedSelector dump improvements."

This reverts commit 4febaf10dc.

* Fixed imports and other review feedback

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-02 11:13:24 +01:00
olivier lamy 3a189ab254 #2056 javadoc warning fixes WIP
Signed-off-by: olivier lamy <olamy@webtide.com>
2017-12-20 10:52:45 +11:00
Greg Wilkins 0c021f2599 EWYK cleanups from #1970
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-19 09:51:11 -08:00
Joakim Erdfelt 2dd970b055 Updating to version 9.2.24-SNAPSHOT 2017-12-18 10:43:47 -06:00
Joakim Erdfelt cdbe733684 Updating to version 9.2.23.v20171218 2017-12-18 09:06:48 -06:00
Greg Wilkins 8660055574
Issue #2010 Support FIPs Key Managers (#2044)
Issue #2010 Support FIPs Key Managers, by only wrapping the default Key Manager if we have wildcard CN's or more than 1 non wild CN.  FIPs users will need to install a
keystore than has no multiple certificates than can only be resolved by SNI. They will also need to have no certificate aliases.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-14 00:15:58 +01:00
Greg Wilkins 6ca975a1aa ignore bad timestamp 2017-12-07 12:25:02 +01:00
Joakim Erdfelt 70fe268bde Merge branch 'release-9.4.8' into jetty-9.4.x 2017-11-29 10:52:02 -07:00
Joakim Erdfelt aeb1a1d6cd Merge tag 'jetty-9.4.8.v20171121' into jetty-9.4.x
Tag for release: jetty-9.4.8-SNAPSHOT

 + 212 HttpClient should support pluggable AuthenticationStore
 + 215 Add Conscrypt for native ALPN/TLS/SSL
 + 272 WebSocket hangs in blockingWrite
 + 487 JDK 9 build compatibility
 + 901 Overriding SSL context KeyStoreType requires explicit override of
   TrustStoreType
 + 922 Implements methods Connection.getBytes[In|Out]()
 + 1209 IllegalStateException when HTTP/2 push is disabled
 + 1213 Upgrade to ASM Version 6.0 for JDK9
 + 1509 Improve GZIPContentDecoder buffer pooling sizing
 + 1550 Resolve inconsistent Shutdown configuration with Jetty Runner
 + 1640 Introduce :run-distro goal for local jetty distribution deployment
 + 1692 Annotation scanning should ignore `module-info.class` files
 + 1696 Missing stacktraces on debug of WriteFlusher onFail
 + 1705 Rejected executions in QueuedThreadPool can lead to memory leaks
 + 1760 Update to apache jasper 8.5.20
 + 1768 Allow jetty properties to be set for the jetty:run-forked goal
 + 1782 Using assembly.tarLongFileMode=posix for jetty-home and
   jetty-distribution assembly
 + 1797 JEP 238 - Multi-Release JAR files break bytecode scanning
 + 1806 Improved ReservedThreads idle timeout
 + 1807 Add new HttpChannel listener and events for metrics libraries
 + 1814 Move JavaVersion to jetty-util for future Java 9 support requirements
 + 1818 Improve Infinispan support on JDK 9
 + 1819 Race condition during annotation parsing
 + 1823 ResourceHandler with ranged requests does not return Content-Type
   response header
 + 1829 OSGi webbundle classes scanned twice
 + 1833 Request.startAsync requires context path
 + 1835 Locker is not reentrant on ServerConnector#setConnectionFactories
 + 1836 Migrate Locker implementation to JVM ReentrantLock implementation
 + 1841 Reduce contention on ServletHolder
 + 1845 Allow null User-Agent in HttpClient
 + 1849 Refactoring of SelectorManager.defaultSchedulers()
 + 1851 Improve insufficient thread warnings/errors
 + 1854 Consistent IOException and timeout handling when extracting form
   parameters
 + 1856 ResourceHandler without ServletContext throws NPE for welcome files if
   used directly
 + 1857 GZIPContentTransformer fails to send entire message if used with
   BufferedContentTransformer
 + 1865 Improve Exception on invalid redirect usage
 + 1867 Improve Exception thrown during Expect 100 Continue
 + 1868 Need a way to randomly select ports for tests
 + 1871 JMXify SslContextFactory
 + 1878 Handle 100 Continue response without Expect header
 + 1879 'Bad tld url' seen during :jetty-run when running integration tests
 + 1881 Improve support of WebSocket over Unix Domain Socket
 + 1885 SessionHandler get/set maxInactiveInterval is not symmetric with
   negative values
 + 1888 Implement cookie matching on Path attribute per RFC 6265
 + 1891 Make HTTP/2 async error notifications configurable
 + 1892 NPE resulting from bad JEP 238 MultiReleaseJarFile structure
 + 1893 Add ability to set HttpClient Connection TTL
 + 1897 Introduce a round-robin connection pool for HttpClient
 + 1900 Update to CDI 2.0 for cdi module
 + 1901 Reimplement PathWatcher as scanner
 + 1909 Update to Apache Jasper 8.5.23
 + 1910 Remove unused jetty-jsp module
 + 1912 AbstractConnector EndPoint leak for failed SSL connections
 + 1914 HttpClient fails to parse Content-Type response header with RFC 2045
   charset="utf-8" syntax
 + 1919 Review LowResourceMonitor
 + 1920 Connect Timeouts with NonBlocking CreateEndPoint
 + 1924 ManagedSelector can livelock under high load
 + 1931 Expose RolloverOutputStream for pluggable behaviour
 + 1933 Use CLASSPATH for scanning java9 system classes
 + 1956 Store and report build information of Jetty
 + 1958 Blocking Timeout has different behavior in HttpInput vs HttpOutput
 + 1970 ManagedSelector can lose selector thread under high concurrent load
 + 1980 PushCacheFilter does not push TLS offloaded HTTP/2 requests
 + 1981 Loading resource content failed
 + 1984 Remove jetty-client dependency in jetty-rewrite
2017-11-29 10:51:22 -07:00
Simone Bordet 31e5531966 Small optimization when starting reserved threads.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-11-28 22:09:45 +01:00
Greg Wilkins 54bf9b56bf Issue #1770 NPE protection in SniX509EKM chooseServerAlias
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-11-24 08:18:24 +01:00
Simone Bordet d285c718b9 Issue #1901 - Reimplement PathWatcher as scanner.
Ignored PathWatcherTest because it is unstable and often fails in Jenkins.
2017-11-22 18:58:22 +01:00
Jan Bartel 7f6e2e8dd0 Issue #1933
Cherry-pick of 29373c6 and 44d170e
2017-11-22 13:53:38 +01:00
Joakim Erdfelt ff53002fac Updating to version 9.4.9-SNAPSHOT 2017-11-21 13:11:31 -07:00
Joakim Erdfelt 82b8fb23f7 Updating to version 9.4.8.v20171121 2017-11-21 12:33:52 -07:00
Jan Bartel 26b7058186 Issue #1981 2017-11-21 17:53:44 +01:00
Jan Bartel 29373c6fb4
Merge pull request #1976 from eclipse/jetty-9.4.x-1933-jdk9-classpath
Jetty 9.4.x 1933 jdk9 classpath
2017-11-16 13:57:56 +01:00
Simone Bordet 131f46df64 Improved dump of ManagedSelector.
Now also dumping the actions.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-11-16 11:35:18 +01:00