Commit Graph

1646 Commits

Author SHA1 Message Date
Greg Wilkins 4f54447585
Jetty 9.4.x 2501 accept listener (#2511)
* Issue #2501 - Accept Listener
* Issue #2501 - Include accepting connections in connection limit.
* AcceptRateLimit minimal delay

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-06-19 09:03:54 +02:00
Simone Bordet 253c637742
Fixes #2663 - Guard Throwable.addSuppressed() calls. (#2665)
* Fixes #2663 - Guard Throwable.addSuppressed() calls.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-06-14 15:21:44 +02:00
Simone Bordet 4f1dd352d6
Issue #2468 - Remove SoLinger. (#2644)
* Issue #2468 - Remove SoLinger.

For non-blocking sockets, StandardSocketOptions#SO_LINGER javadocs
report that the behavior is undefined. In JDK 11 setting SoLinger
for non-blocking sockets will be ignored.

As such, there is no point in allowing SoLinger to be configured
in Jetty that only uses non-blocking sockets.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-06-09 13:21:24 +02:00
Greg Wilkins 482e207392
Merge pull request #2636 from lachlan-roberts/jetty-9.4.x-2592-WriteFlusher-Cleanup
Issue #2592 - WriteFlusher Cleanup
2018-06-09 09:56:04 +02:00
Lachlan Roberts da58c20d90 Issue #2592 - Rework of WriteFlusher
changes from review

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-06-09 10:24:43 +10:00
Joakim Erdfelt 3932b11e64 Merge remote-tracking branch 'origin/release-9.4.11' into jetty-9.4.x 2018-06-07 14:31:24 -05:00
Lachlan Roberts f2893fdd0b Issue #2592 - Rework of WriteFlusher
WriteFlusher.write() now requires the callback it is given is not null

the FAILED state of WriteFlusher is now a terminal state
any failure will now result in the callback being failed and a transition to the FAILED state

the WriteFlusher documentation and WriteFlusherTests have also been altered to reflect these changes

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-06-07 22:02:44 +10:00
Lachlan Roberts 29c9afe135 Issue #2592 - Failing test on Windows: ServerTimeoutsTest.testAsyncWriteIdleTimeoutFires[transport: HTTP]
removed HttpOutput.close(Closeable) method as IO.close(Closeable) should be used instead
added isFailed() method to WriteFlusher and used it to fix WriteFlusherTest.testFailWhileBlocking()
surrounded usage of onError() in HttpOutput.run() with try-finally so that IO.close(this) is executed if onError throws

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-06-06 15:35:54 +10:00
Joakim Erdfelt e4bfe00dce Updating to version 9.4.12-SNAPSHOT 2018-06-05 14:18:37 -05:00
Joakim Erdfelt d5fc0523cf Updating to version 9.4.11.v20180605 2018-06-05 13:23:02 -05:00
Lachlan Roberts 72dcfc15e5 Issue #2592 - Failing test on Windows: ServerTimeoutsTest.testAsyncWriteIdleTimeoutFires[transport: HTTP]
changed write flusher to go from pending state to failed state
reverted previous HttpOutput changes

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-06-05 19:21:30 +10:00
Lachlan Roberts 69aaabac24 fixes to printed exception stack traces in tests
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-05-29 17:55:14 +10:00
Greg Wilkins e6e49bdc85 Updated javadoc for callbacks
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-05-25 08:01:31 +02:00
Simone Bordet 744f9054b3 Fixes #2547 - Review usages of ServerSocket[Channel].accept().
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-05-16 18:40:10 +02:00
Simone Bordet 303deacda2 Fixes #2516 - NPE at SslClientConnectionFactory.newConnection().
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-05-09 09:37:30 +02:00
Joakim Erdfelt 1732ffca51 Updating to version 9.4.11-SNAPSHOT 2018-05-03 11:48:05 -05:00
Joakim Erdfelt daa59876e6 Updating to version 9.4.10.v20180503 2018-05-03 10:55:19 -05:00
Simone Bordet 6224e75862
Issue #2366 - Review HTTP/2 interleaving. (#2379)
* Fixes #2366 - Review HTTP/2 interleaving.

Now using a fairer algorithm that performs multiple generation passes
but without generating all frames for the current entries - it stops
after N passes over all the entries when the number of bytes to
write is large enough.

Using HttpConfiguration.outputBufferSize as the writeThreshold on
the server and a default 32 KiB on the client to stop the generation
after a pass over all the entries.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-04-13 11:50:17 +02:00
Greg Wilkins 426fb955f8 extra debug for #2205
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-04-03 08:59:56 +10:00
Joakim Erdfelt c3cc138a3b Updating to version 9.4.10-SNAPSHOT 2018-03-20 08:25:59 -05:00
Joakim Erdfelt 1f8159b1e4 Updating to version 9.4.9.v20180320 2018-03-20 07:18:24 -05:00
Simone Bordet adeaf77c02 Small optimization to save the allocation of an iterator,
in case the selector has been woken up without selected keys.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-20 10:38:53 +01:00
Joakim Erdfelt a107bdd2bb Issue #2226 - SelectChannelEndPoint test cleanup
Applying recommended changes from review.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-19 17:26:44 -05:00
Joakim Erdfelt a437466996 Issue #2226 - SelectChannelEndPoint test cleanup
Fixing NPE in testcase

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-19 16:45:01 -05:00
Joakim Erdfelt 1493e57064 Issue #2226 - SelectChannelEndPoint test cleanup
+ New SocketChannelEndPointTest replacement class
  * Is Parameterized for both Normal/Ssl scenarios
  * Builds a new set of connections/selector manager etc
    for each test
  * TestConnection moved to inner static class to not rely
    on test class fields/methods
  * Adding SafeInteger to help track down bad test behavior.

Blocking Read behavior doesn't do what we think, see Exception on CI.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-19 16:03:16 -05:00
Joakim Erdfelt 423d160f0d Issue #2226 - SelectChannelEndPoint test cleanup
+ Renamed old SocketChannelEndPointTest to
  SocketChannelEndPointOpenCloseTest
+ Moved SelectChannelEndPointSslTest.checkSslEngineBehavior() to
  new SslEngineBehaviorTest as its unrelated to the rest
  of the SelectChannelEndPointTest logic

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-19 16:01:17 -05:00
Joakim Erdfelt 7c5b49fb7f Issue #2226 - SelectChannelEndPoint test cleanup
+ Renamed SelectChannelEndPointInterestsTest to
  SocketChannelEndPointInterestsTest
+ Merged EndPointTest abstract class into SocketChannelEndPointTest
  as it's only used by that testcase

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-19 15:04:03 -05:00
Joakim Erdfelt 13224e4ee8 Adding TestTracker to SelectChannelEndPointTest
Hoping that this will reveal the specific circumstances (test order)
that lead to the frequent test failures on CI

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-19 14:16:49 -05:00
Simone Bordet 7bc5e6e33a Small code cleanup and optimization in dump().
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-19 10:43:26 +01:00
Greg Wilkins fc5369a1de simplified idle tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-19 11:13:08 +11:00
Greg Wilkins 0b44f47b45 removed extra debug
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-16 09:48:35 +11:00
Greg Wilkins 1da19dc2fd
[WIP!] HTTP Close #1832 (#2338)
* Only close if parser closed and output is shutdown

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

* a better possible fix

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

* after review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-15 23:12:58 +11:00
Joakim Erdfelt 358f324ddc
Merge pull request #2335 from eclipse/jetty-9.4.x-issue-2218-windows-livelock
Issue #2218 - Windows Selector Bug
2018-03-15 04:43:33 -05:00
Greg Wilkins c8d6f0a3bb Recursion protection for SSL flush try again #2233
Protecton from recursion in SSL flush try again #2233
This would not be needed if we could make flush iterate when necessary.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-15 10:41:50 +11:00
Joakim Erdfelt 484280bac6 Issue #2218 - Windows Selector Bug
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-14 17:42:50 -05:00
Greg Wilkins f35bd03810 Speculative fix for #2233
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-13 16:15:28 +11:00
Greg Wilkins be1a011120 more robust test
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-13 14:26:52 +11:00
Greg Wilkins 74f5b9898f simplified testSelectorWakeup #2219
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-13 13:42:35 +11:00
Greg Wilkins cf0b6140fe
Merge pull request #2299 from olamy/feature/available_processors
#2298 Override the processor number with an environment variable
2018-03-08 08:36:52 +11:00
Simone Bordet a3100e0211 Issue #2288 - Cleanup the statistics classes. (#2290)
* Issue #2288 - Cleanup the statistics classes.

Cleaned up code, added Javadocs.
Renamed SampleStatistics.set(long) to record(long).

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

* toString stddev

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-08 08:35:21 +11:00
olivier lamy 7004aaa538 #2298 Override the processor number with an environment variable
Signed-off-by: olivier lamy <olamy@webtide.com>
2018-03-07 21:02:26 +10:00
Greg Wilkins 5216d07124 Better dump for ManagedSelector
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-07 18:06:57 +11:00
Greg Wilkins bcb9fa3b32
Merge pull request #2257 from lachlan-roberts/jetty-9.4.x-2206-ReferenceEquality
Resolved errorprone ReferenceEquality warnings #2206
2018-03-07 11:11:40 +11:00
Greg Wilkins daeaad7624 improve test timing
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-06 19:03:46 +11:00
Greg Wilkins 2291d12b87 more robust idle test
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-06 15:34:42 +11:00
Greg Wilkins f6d9393bb5 more robust test by avoiding sleep
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-06 14:35:31 +11:00
Lachlan Roberts 020ebde77c found additional ReferenceEquality warnings which have been resolved
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-06 14:28:11 +11:00
Joakim Erdfelt 2879d5a5a0
Merge pull request #2277 from eclipse/jetty-9.4.x-2255-notify_ssl_handshake_on_write_failures
Issue #2255 - Notify SSL handshake failures on write failures.
2018-03-02 09:45:38 -06:00
Lachlan Roberts a639ee9275 Resolved errorprone MissingOverride warnings #2206
`@Override` was added to methods which were missing the annotation #2206

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-01 13:59:25 +11:00
Simone Bordet 718ac76815 Issue #2255 - Notify SSL handshake failures on write failures.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-28 21:32:42 +01:00