Simone Bordet
96cf942b70
Fixed race condition in onSelected().
...
WebSocket and multiplexed protocols are always read interested.
It may happen that while the application is writing, the write
blocks, resulting in a call to changeInterests().
At the same time, the selector may detect data to read and call
onSelected(), so there is a possibility that onSelected() runs
concurrently with changeInterests().
The fix adds an additional state (PROCESSING) that isolates the
changes that onSelected() makes to _interestOps, spin-waiting if
changeInterests() is running concurrently.
Likewise, changeInterests() spin-waits until onSelected() is running
concurrently.
2014-10-09 22:46:04 +02:00
Simone Bordet
76278d3563
Fixed race condition causing onSelected() to throw IllegalStateException.
...
The race was happening when updateKey() lost the race with
changeInterests() to update the interests and subsequently the key.
In that case, the selector thread that called updateKey() was returning
while changeInterests() was executing the CHANGING state.
Since updateKey() lost the race, the actual key interests was still
(typically) OP_READ so the selector thread would select() and call
onSelected() while changeInterests() was still executing, causing the
IllegalStateException.
2014-10-09 16:43:50 +02:00
Simone Bordet
649eb7f3dc
Introduced factory method to create JDK's Selector instances.
2014-10-09 10:08:15 +02:00
Simone Bordet
bcbefd3942
Fixed race where the key interests were set before updating the
...
state, causing onSelected() to be called with the wrong state and
failing an assertion.
2014-09-26 10:13:16 +02:00
Simone Bordet
8d2efaf7eb
445167 - Allow configuration of dispatch after select.
...
Introduced parameter "dispatchIO" in the relevant factories so that
they can be configured by users and connections will be created
taking into account this parameter.
For less configurable connection factories, this parameter is
currently hardcoded to either true or false depending on the case.
For example, ALPN and NPN connections have it to false, since they
don't do any blocking operation in onFillable().
2014-09-26 10:13:16 +02:00
Greg Wilkins
2018098225
Merge remote-tracking branch 'origin/jetty-9.2.x'
...
Conflicts:
jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java
2014-09-18 16:36:51 +10:00
Greg Wilkins
3b066ca2ae
444415 iterative WriteFlusher
2014-09-18 15:31:59 +10:00
Simone Bordet
193eaaf1c3
SelectChannelEndPoint should set the interestOps as requested.
...
Previously, SCEP was skipping the update of the interestOps in case it
was either input or output shutdown.
Now it always set the interestOps as requested and leaves to the
connection decide what interestOps needs to be set.
2014-09-17 17:44:49 +02:00
Joakim Erdfelt
9249ebb6ef
Using 9.2.4-SNAPSHOT for branch
2014-09-11 06:10:44 -07:00
Joakim Erdfelt
2755746def
Merge branch 'jetty-http2'
2014-09-11 05:56:55 -07:00
Simone Bordet
fd1c9dd8d2
443713 - Reduce number of SelectionKey.setInterestOps() calls.
...
Introduced a state machine to handle the various scenarios (ST = selector thread, Tx = pooled thread):
ST: call to SCEP.onSelected() moves from SELECTING -> PENDING.
ST: call to SCEP.updateKey() moves from PENDING -> UPDATING -> SELECTING
T1: call to SCEP.changeInterests() moves (SELECTING | PENDING) -> CHANGING -> SELECTING
The race between ST and T1 to move from PENDING to either UPDATING or CHANGING will be won
by one thread only, which will then perform the call to SelectionKey.setInterestOps().
Preferably, this will be done by ST during an updateKey() call. If updateKey() has already
been invoked, then changeInterests() will perform the call to SelectionKey.setInterestOps().
However, if T1 loses, it still has to perform the key update, so it will spin until ST
moves back to SELECTING.
2014-09-10 21:45:27 +02:00
Simone Bordet
1ee11138a7
Introduced field "submitKeyUpdates" instead of relying on a system
...
property.
Modified method updateKey() to return a boolean to signal whether the
selector was woken up.
2014-09-10 11:11:12 +02:00
Simone Bordet
87cac64dff
Fixed typo, improved logging, removed unused type parameter.
2014-09-10 11:11:12 +02:00
Greg Wilkins
40d84ff1e3
443662 Consume buffer in write(ByteBuffer)
2014-09-10 17:41:14 +10:00
Jesse McConnell
88b19abf52
[maven-release-plugin] prepare for next development iteration
2014-09-05 09:19:30 -05:00
Jesse McConnell
9bfeb2221f
[maven-release-plugin] prepare release jetty-9.2.3.v20140905
2014-09-05 09:19:23 -05:00
Greg Wilkins
07ec47adfa
improved SSL debug logging
2014-09-04 19:09:39 +10:00
Simone Bordet
ee3ab1f8ea
Merged branch 'master' into 'jetty-http2'.
2014-09-01 11:57:09 +02:00
Simone Bordet
9dbd2cd9d8
442950 - Embedded Jetty client requests to localhost hangs with high cpu usage (NIO OP_CONNECT Solaris/Sparc).
...
Now checking the return value of SocketChannel.connect() to determine
whether to register the channel (true) or finish the connect (false).
2014-09-01 11:28:59 +02:00
Simone Bordet
ca2a23c35d
Improved Javadocs and code cleanup.
2014-09-01 11:28:59 +02:00
Greg Wilkins
5507e267ae
Merge remote-tracking branch 'origin/master' into jetty-http2
...
Conflicts:
jetty-server/src/main/config/etc/jetty-https.xml
jetty-server/src/main/config/modules/ssl.mod
jetty-start/src/main/java/org/eclipse/jetty/start/Modules.java
2014-08-29 15:49:25 +10:00
Greg Wilkins
69390954dc
435322 acceptor and selector configuration/priority
2014-08-29 15:36:19 +10:00
Greg Wilkins
23eba39748
Merge remote-tracking branch 'origin/master' into jetty-http2
2014-08-21 16:39:45 +10:00
Greg Wilkins
420df3b5d6
441756 Ssl Stackoverflow on renegotiate
2014-08-21 09:47:01 +10:00
Greg Wilkins
b47f9ef605
cleaned up OSGi manifest creation
2014-08-15 19:35:49 +10:00
Simone Bordet
1c984e680f
Introduced the capability of inserting buffers at a specific index.
2014-08-04 12:12:19 +02:00
Simone Bordet
51e4885911
Made HTTP2Client support SSL so that it can be used to test websites that serve HTTP2.
2014-08-01 19:03:29 +02:00
Greg Wilkins
b439549793
Merge remote-tracking branch 'origin/master' into jetty-http2
...
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2014-08-01 09:50:20 +10:00
Greg Wilkins
f970ffc0ac
Misc cleanups done whilst fixing 435322
2014-08-01 09:02:44 +10:00
Joakim Erdfelt
cb42ef2167
[maven-release-plugin] prepare for next development iteration
2014-07-23 11:18:01 -07:00
Joakim Erdfelt
dc62cb5ac7
[maven-release-plugin] prepare release jetty-9.2.2.v20140723
2014-07-23 11:17:55 -07:00
Greg Wilkins
a537fefd6b
Merge remote-tracking branch 'origin/master' into jetty-http2
2014-07-18 15:28:54 +10:00
Greg Wilkins
5c7f3e7c0d
432815 Fixed selector stop race
2014-07-18 12:05:32 +10:00
Greg Wilkins
5e281dd449
Merge remote-tracking branch 'origin/master' into jetty-http2
...
Conflicts:
jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java
2014-07-10 14:43:39 +10:00
Greg Wilkins
55ca09a00e
438190 findbug improvements
2014-07-10 14:41:32 +10:00
Greg Wilkins
6eceb6bd99
Merge remote-tracking branch 'origin/master' into jetty-http2
2014-06-29 08:11:41 +02:00
Greg Wilkins
9b764ef3fa
435322 Fixed Iterating Callback close
2014-06-27 20:43:12 +02:00
Simone Bordet
66f3913527
Merged branch 'origin/master' into 'jetty-http2'.
2014-06-25 12:34:19 +02:00
Simone Bordet
3ff4195dbc
Guarded calls to LOG.debug() with if (LOG.isDebugEnabled()) to reduce allocation of varargs Object[].
2014-06-25 12:26:45 +02:00
Simone Bordet
334db9fe72
Updated version to 9.3.0-SNAPSHOT.
2014-06-16 21:33:03 +02:00
Simone Bordet
74bf0000c5
Removed Lease.merge() and cleared lists in recycle().
2014-06-13 13:51:42 +02:00
Simone Bordet
7aeddff675
Changed method acquire() to not append(), to allow callers to decide
...
whether to append() or prepend the returned buffer.
2014-06-10 18:09:07 +02:00
Simone Bordet
1d2e9da29c
Clearing the buffer before returning it.
2014-06-10 12:02:54 +02:00
Jesse McConnell
c3ee0711ca
[maven-release-plugin] prepare for next development iteration
2014-06-09 13:37:54 -05:00
Jesse McConnell
06b494eeac
[maven-release-plugin] prepare release jetty-9.2.1.v20140609
2014-06-09 13:37:49 -05:00
Simone Bordet
bedfda03d2
Introduced Lease.prepend().
2014-06-09 14:01:51 +02:00
Greg Wilkins
36081dbcbf
reworked for metadata
2014-06-09 13:01:15 +02:00
Simone Bordet
244158ee3e
Introduced class ByteBufferPool.Lease to keep track of buffers with
...
associated information of whether they have been borrowed from the
ByteBufferPool or not.
2014-06-06 16:24:09 +02:00
Greg Wilkins
8f4aeeeb8d
updated version to 10.0.0-SNAPSHOT
2014-06-04 15:08:54 +02:00
Jesse McConnell
2e859e4ae2
[maven-release-plugin] prepare for next development iteration
2014-05-26 12:04:15 -05:00
Jesse McConnell
71ad2114c5
[maven-release-plugin] prepare release jetty-9.2.0.v20140526
2014-05-26 12:04:08 -05:00
Jesse McConnell
d59dbe936b
[maven-release-plugin] prepare for next development iteration
2014-05-23 09:59:19 -05:00
Jesse McConnell
edc7646a4c
[maven-release-plugin] prepare release jetty-9.2.0.v20140523
2014-05-23 09:59:13 -05:00
Jesse McConnell
6a3cab2a2f
[maven-release-plugin] prepare for next development iteration
2014-05-15 14:44:37 -05:00
Jesse McConnell
eec01cbff4
[maven-release-plugin] prepare release jetty-9.2.0.RC0
2014-05-15 14:44:28 -05:00
Jesse McConnell
4d2fdee7fc
[maven-release-plugin] prepare for next development iteration
2014-05-08 11:44:34 -05:00
Jesse McConnell
4515fe661b
[maven-release-plugin] prepare release jetty-9.2.0.M1
2014-05-08 11:44:27 -05:00
Greg Wilkins
2e261b75d6
433692 improved buffer resizing
2014-04-29 20:36:13 +02:00
Greg Wilkins
61b2e7f75e
Improved failsafe close handling for half closed endpoints
2014-04-24 10:01:46 +02:00
Joakim Erdfelt
9f76856fcf
EndPoint onIdleExpired should not close on its own
...
+ From discussion with Simone, the dispatched fillInterest.onFail()
needs to occur, so that the AbstractConnection.onReadTimeout() can
handle the close conditions needed by SPDY and WebSocket.
The EndPoint close within onIdleExpired is a race condition with
this onReadTimeout desired behavior.
2014-04-17 10:38:06 -07:00
Greg Wilkins
ef400675aa
431519 Fixed NetworkTrafficListener
2014-04-10 16:20:10 +10:00
Joakim Erdfelt
28d9df1dbb
Refactoring alpn stuff into jetty-alpn-server and jetty-alpn-client
2014-03-31 14:18:37 -07:00
Greg Wilkins
c5e1e249e7
set version for 9.2.x
2014-03-31 11:35:06 +11:00
Greg Wilkins
c895f6dbcd
organised imports
2014-03-31 09:57:59 +11:00
Simone Bordet
a7f9e5a674
Made test more reliable.
2014-03-28 19:34:03 +01:00
Simone Bordet
342c97d8ba
430654 - closing client connections can hang worker threads.
...
Prettified usage of NonBlockingThread and added Javadocs.
2014-03-27 15:37:23 +01:00
Greg Wilkins
86d13b91a5
430654 avoid dispatching failure callbacks
2014-03-27 19:08:16 +11:00
Jesse McConnell
0ec0d452e9
[maven-release-plugin] prepare for next development iteration
2014-03-07 09:10:08 -06:00
Jesse McConnell
1e555567a9
[maven-release-plugin] prepare release jetty-9.1.3.v20140225
2014-03-07 09:10:08 -06:00
Greg Wilkins
15952aeee4
428232 - Rework batch mode / buffering in websocket.
2014-02-21 00:54:32 +11:00
Simone Bordet
5d8b00a098
Avoid boxing of the number of bytes flushed.
2014-02-18 18:31:48 +01:00
Jesse McConnell
eb0aea46ce
set versions.txt file to new version and fix mistaken developmentVersion
2014-02-10 13:48:29 -06:00
Jesse McConnell
f3d38dfb15
[maven-release-plugin] prepare for next development iteration
2014-02-10 11:17:14 -06:00
Jesse McConnell
8f6cbc9111
[maven-release-plugin] prepare release jetty-9.1.2.v20140210
2014-02-10 11:17:07 -06:00
Simone Bordet
95c728c12f
Do not track null ByteBuffers that are being released.
2014-02-10 09:46:16 +01:00
Jesse McConnell
91429ea123
Merge branch 'release-9'
2014-01-10 09:11:25 -06:00
Jesse McConnell
b82ec6e668
[maven-release-plugin] prepare for next development iteration
2014-01-08 16:47:09 -06:00
Jesse McConnell
b99623a21d
[maven-release-plugin] prepare release jetty-9.1.1.v20140108
2014-01-08 16:47:01 -06:00
Joakim Erdfelt
36340c4898
Minor tweaks to leak detector stuff
2014-01-08 14:54:39 -07:00
Simone Bordet
8720fb213c
425043 - Track whether pools are used correctly.
...
Introduced LeakDetector and utility classes LeakTrackingConnectionPool
and LeakTrackingByteBufferPool to track resource pool leakages.
Fixed ConnectionPool to be more precise in closing connections when
release() cannot recycle the connection.
Fixed a leak in server's HttpConnection in case a request arrives with
the Connection: close header: a ByteBuffer was allocated but never
released.
2014-01-07 19:44:29 +01:00
Joakim Erdfelt
a12fd9ea03
Happy New Year - 2014!
2014-01-02 14:50:14 -07:00
Greg Wilkins
b91d1745ad
424498 made bytebufferendpoint threadsafe
2013-12-20 12:49:57 +11:00
Simone Bordet
cb6bacb11c
423926 - Remove code duplication in class IdleTimeout.
...
Removed code duplications, and also removed method close(),
unnecessary since onClose() was performing the exact same code.
Also reviewed subclasses of IdleTimeout to make sure that they always
call onClose() when they are "closed", to make sure that the timeout
does not fire and that there are no memory leaks (the scheduler
holding a reference to the timeout task, which in turn holds a
reference to the IdleTimeout instance).
2013-12-13 13:39:46 +01:00
Greg Wilkins
1b30b0f9a8
422723 - Dispatch failed callbacks to avoid blocking selector
2013-11-28 10:04:08 +11:00
Greg Wilkins
e37a369ca6
422427 improved TestConnection
2013-11-25 11:08:54 +11:00
Joakim Erdfelt
9172d6115b
[maven-release-plugin] prepare for next development iteration
2013-11-15 16:58:44 -07:00
Joakim Erdfelt
6feeab6ec3
[maven-release-plugin] prepare release jetty-9.1.0.v20131115
2013-11-15 16:58:36 -07:00
Joakim Erdfelt
7bbc0ff4df
[maven-release-plugin] rollback the release of jetty-9.1.0.v20131115
2013-11-15 16:33:52 -07:00
Joakim Erdfelt
1126e68971
[maven-release-plugin] prepare for next development iteration
2013-11-15 16:03:28 -07:00
Joakim Erdfelt
d6418c73d4
[maven-release-plugin] prepare release jetty-9.1.0.v20131115
2013-11-15 16:03:20 -07:00
Joakim Erdfelt
6c372b9440
Reverting <version> to 9.1.0-SNAPSHOT
2013-11-15 15:36:26 -07:00
Jesse McConnell
b5345caed1
[maven-release-plugin] prepare for next development iteration
2013-11-14 15:27:52 -06:00
Jesse McConnell
1582aa196d
[maven-release-plugin] prepare release jetty-9.1.0.v20131114
2013-11-14 15:27:37 -06:00
Jesse McConnell
63f20d4518
[maven-release-plugin] prepare for next development iteration
2013-11-07 10:42:54 -06:00
Jesse McConnell
dc2fd1b9ce
[maven-release-plugin] prepare release jetty-9.1.0.RC2
2013-11-07 10:42:41 -06:00
Greg Wilkins
72696ba030
420359 - fixed thread warnings
2013-11-07 22:35:49 +11:00
Simone Bordet
03983102e6
Merged branch 'master' into 'jetty-9.1'.
2013-11-05 09:58:34 +01:00
Simone Bordet
40fa764863
Catching Throwable everywhere and closing channels when necessary to
...
avoid leaks.
2013-11-05 09:42:50 +01:00
Simone Bordet
4024708bbc
Connection and NetworkConnector now implements Closeable,
...
rather than AutoCloseable, since they deal with I/O.
2013-11-05 09:41:49 +01:00
Greg Wilkins
36c807c2f3
417223 - removed deprecated ThreadPool.dispatch
2013-11-04 17:21:50 +11:00
Greg Wilkins
17bf8ccee0
420359 - Support 0 acceptors for ServerConnector
...
improved javadoc
2013-11-04 17:13:19 +11:00
Greg Wilkins
74272663e6
420359 - Support 0 acceptors for ServerConnector
2013-11-04 16:16:54 +11:00
Greg Wilkins
f567bddad9
global clean up imports
2013-11-04 13:48:03 +11:00
Greg Wilkins
eb3bb660b5
Merge remote-tracking branch 'origin/master' into jetty-9.1
...
Conflicts:
jetty-client/src/main/java/org/eclipse/jetty/client/util/DigestAuthentication.java
jetty-client/src/test/java/org/eclipse/jetty/client/HttpReceiverTest.java
jetty-client/src/test/java/org/eclipse/jetty/client/HttpSenderTest.java
jetty-http/src/main/java/org/eclipse/jetty/http/HttpField.java
jetty-server/src/test/java/org/eclipse/jetty/server/AbstractHttpTest.java
jetty-servlets/src/test/java/org/eclipse/jetty/servlets/AbstractDoSFilterTest.java
jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/generator/HeadersBlockGenerator.java
jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/parser/HeadersBlockParser.java
jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeRequest.java
jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketFrame.java
jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java
jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateCompressionMethodTest.java
jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtensionTest.java
2013-11-03 18:22:09 +11:00
Mikhail Mazursky
6b0269a16d
[Bug 420930] Use Charset to specify character encoding
...
Signed-off-by: Mikhail Mazursky <mikhail.mazursky@gmail.com>
2013-11-02 14:44:36 +06:00
Greg Wilkins
852be79a3c
Merge remote-tracking branch 'origin/master' into jetty-9.1
...
Conflicts:
jetty-server/src/test/java/org/eclipse/jetty/server/HttpConnectionTest.java
jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHandler.java
2013-11-01 14:45:16 +11:00
Greg Wilkins
a76ddc1c6a
420572 IOTest explicitly uses 127.0.0.1
2013-11-01 12:17:30 +11:00
Simone Bordet
edcb39cc89
Catching Throwable and closing channels rigorously.
2013-10-29 10:03:31 +01:00
Simone Bordet
00867b094b
Making classes implement Closeable, rather than AutoCloseable,
...
since it is more semantically correct.
2013-10-29 10:03:31 +01:00
Simone Bordet
c822ee4f82
Make sure we never exit the selector loop unless stopped.
2013-10-28 12:19:16 +01:00
Greg Wilkins
c44537fca8
419899 Do not wrap SSL Exception as EoFException
2013-10-21 16:29:20 +11:00
Greg Wilkins
f3b393aa5d
Refactored complexity out of HttpFields
...
In preparation of merging Fields class and supporting HTTP/2.0 HPACK
2013-10-17 21:35:11 +11:00
Greg Wilkins
27a3ceeb27
Optimised SelectorManager to avoid changeQ for interest ops
2013-10-17 12:43:28 +11:00
Simone Bordet
879c3eb6f5
Improved code in case of connection failures: close the connection,
...
and cancel the connect timeout task.
2013-10-16 17:24:43 +02:00
Simone Bordet
8bd6ab0beb
Removed class SocketBased, not necessary.
2013-10-16 16:36:23 +02:00
Simone Bordet
114a95234b
Merged branch 'master' into 'jetty-9.1'.
2013-10-16 16:30:04 +02:00
Simone Bordet
45828ee906
418892 - SSL session caching so unreliable it effectively does not
...
work.
Fixed by making sure that we completely decrypt read bytes.
Before the fix, it was possible that we returned after the decryption
of one TLS frame, while another was still present in the
_encryptedBuffer.
This lead to non-clean closes of the connection, which hampered the
capability of session reuse by clients.
Now we decrypt in a loop and only return if there is nothing more
that we can decrypt.
2013-10-16 16:27:36 +02:00
Simone Bordet
25d9b8704f
417356 - Add SOCKS support to jetty client.
...
Big refactoring to allow for additional proxy schemes that work at a
lower level than HTTP.
Introduced client-side ConnectionFactory, and binding that to a
HttpDestination, so that connections to that destination will use the
same ConnectionFactory.
The destination's ConnectionFactory is now initialized from the proxy
configuration and the transport, which is now itself a
ConnectionFactory.
The proxy configuration has also changed becoming polymorphic by
introducing a new ProxyConfiguration.Proxy abstract class,
which is implemented as HTTPProxy and can be implemented in future as
SOCKS4Proxy (and possibly others).
2013-10-08 15:06:39 +02:00
Jesse McConnell
856a24b65a
[maven-release-plugin] prepare for next development iteration
2013-09-30 14:46:09 -05:00
Jesse McConnell
f466f03c6a
[maven-release-plugin] prepare release jetty-9.0.6.v20130930
2013-09-30 14:46:00 -05:00
Jesse McConnell
0b3f431d27
set version back to 9.0.6-SNAPSHOT
2013-09-30 12:33:06 -05:00
Jesse McConnell
af2e6ff911
Merge branch 'master' into release-9
2013-09-30 12:28:04 -05:00
Greg Wilkins
6146f0cc9c
cleanup threadpool usage
2013-09-30 14:07:17 +10:00
Greg Wilkins
5f02620603
Merge remote-tracking branch 'origin/master' into jetty-9.1
...
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java
2013-09-30 13:20:13 +10:00
Greg Wilkins
f07722909f
reduced routine exception verbosity
2013-09-30 12:45:16 +10:00
Greg Wilkins
643b6c3c77
removed ExecutorCallback
2013-09-26 18:06:10 +10:00
Jesse McConnell
0525498ad3
[maven-release-plugin] prepare for next development iteration
2013-09-19 15:06:31 -05:00
Jesse McConnell
c05a725db6
[maven-release-plugin] prepare release jetty-9.0.6.v20130919
2013-09-19 15:06:17 -05:00
Simone Bordet
4663fa4992
Renamed "Empty" inner classes to "Adapter" to comply with the rest of
...
the codebase.
2013-09-04 13:15:23 +02:00
Greg Wilkins
2e444d2f17
Merge remote-tracking branch 'origin/master' into jetty-9.1
...
Conflicts:
jetty-io/src/main/java/org/eclipse/jetty/io/AbstractConnection.java
jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java
jetty-spdy/spdy-http-server/src/main/java/org/eclipse/jetty/spdy/server/proxy/ProxyHTTPSPDYConnection.java
2013-09-02 17:00:07 +10:00
Greg Wilkins
07ae3615ed
416321 handle failure during blocked committing write
2013-09-02 14:44:23 +10:00
Simone Bordet
ddca8bc327
Avoid StackOverflowErrors when submitting changes.
...
These were possible on a busy server, when many new connections are
created, and each triggers read interest: one connection submits the
read interest change, then runs the changes, finds that another
connections is created, runs it, which schedule a read interest
change, and so on.
Now the code is simpler, and while we always offer to the queue,
it may even be faster.
2013-08-29 20:04:01 +02:00
Simone Bordet
4923252ce4
Changed defaults for ArrayByteBufferPool.
...
There are cases, for example in WebSocket, where we want to allocate
small buffers to write frame headers and then do a gathered write.
ArrayByteBufferPool had a minimum size of 64 bytes,
which was too big and always led to allocation rather than pooling,
leading to performance slowdowns.
Defaults are now minSize=0, increment=1024.
2013-08-23 15:56:44 +02:00
Simone Bordet
72c4dbc46e
415062 SelectorManager wakeup optimisation.
...
Fixed race condition that could have allowed changes in queue but
selector waiting in select().
2013-08-23 14:12:11 +02:00
Greg Wilkins
c27020740f
415062 SelectorManager wakeup optimisation
2013-08-23 11:01:54 +10:00
Joakim Erdfelt
3c28bf8c60
Revert "415062 SelectorManager wakeup optimisation"
...
This reverts commit edbf6e07aa
.
2013-08-16 14:38:10 -07:00
Joakim Erdfelt
fd3537e012
Revert "415062 SelectorManager wakeup optimisation"
...
This reverts commit 2f0becff8f
.
2013-08-16 14:38:08 -07:00
Joakim Erdfelt
d351c82de8
Revert "415062 SelectorManager wakeup optimisation"
...
This reverts commit b58c05d77c
.
2013-08-16 14:38:02 -07:00
Greg Wilkins
b58c05d77c
415062 SelectorManager wakeup optimisation
...
Some further cleanup after sbordet review
2013-08-17 00:01:20 +10:00
Greg Wilkins
2f0becff8f
415062 SelectorManager wakeup optimisation
...
removed wakeup spin
2013-08-16 19:23:59 +10:00
Greg Wilkins
edbf6e07aa
415062 SelectorManager wakeup optimisation
2013-08-16 16:35:38 +10:00
Thomas Becker
38549f20cd
FillInterest fix javadoc
2013-08-15 12:13:44 +02:00
Jan Bartel
c80100b4a9
[maven-release-plugin] prepare for next development iteration
2013-08-15 19:13:27 +10:00
Jan Bartel
e7e7e45500
[maven-release-plugin] prepare release jetty-9.0.5.v20130815
2013-08-15 19:13:13 +10:00
Jan Bartel
716430bb03
[maven-release-plugin] rollback the release of jetty-9.0.5.v20130815
2013-08-15 18:03:49 +10:00
Jan Bartel
3d13c15d35
[maven-release-plugin] prepare release jetty-9.0.5.v20130815
2013-08-15 17:22:03 +10:00
Jan Bartel
7947b35134
Reset version for rerun of 9.0.5
2013-08-15 16:47:03 +10:00
Joakim Erdfelt
5dbd746047
Fixing malformed Javadoc warnings in jetty-io
2013-08-14 12:46:25 -07:00
Simone Bordet
34032552ea
Avoid boxing of primitive int variables in logging statements.
2013-08-14 14:33:05 +02:00
Jesse McConnell
4383c9042d
[maven-release-plugin] prepare for next development iteration
2013-08-13 14:20:56 -05:00
Jesse McConnell
160d34ec23
[maven-release-plugin] prepare release jetty-9.0.5.v20130813
2013-08-13 14:20:47 -05:00
Greg Wilkins
b8f7637e7d
Merge remote-tracking branch 'origin/master' into jetty-9.1
2013-07-22 23:32:04 +10:00
Thomas Becker
8946b4946b
SSLConnection comment out setting soLonger timeout to avoid threads stuck in preClose0
2013-07-22 11:52:13 +02:00
Greg Wilkins
3add75f135
398467 Servlet 3.1 Non Blocking IO
...
prevent fillInterest from HTTP after upgrade
2013-07-12 13:01:46 +10:00
Greg Wilkins
93faa8147b
398467 Servlet 3.1 Non Blocking IO
...
use nested classes for better stack trace
2013-07-11 19:13:58 +10:00
Greg Wilkins
e35914e400
Merge remote-tracking branch 'origin/master' into jetty-9.1
...
Conflicts:
jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2013-07-09 00:32:41 +10:00
Greg Wilkins
981102fda5
398467 Servlet 3.1 Non Blocking IO
...
Asynchronous reads working.
2013-07-05 18:11:09 +10:00
Greg Wilkins
965918d8f2
Merge remote-tracking branch 'origin/master' into jetty-9.1
2013-07-04 17:28:57 +10:00
Thomas Becker
f8049caf3d
412234 fix bug where NetworkTrafficSelectChannelEndpoint counted bytes wrong on incomplete writes
2013-07-03 18:13:07 +02:00
Greg Wilkins
e4716e05e1
Merge remote-tracking branch 'origin/master' into jetty-9.1
...
Conflicts:
aggregates/jetty-all/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-annotations/pom.xml
jetty-ant/pom.xml
jetty-client/pom.xml
jetty-continuation/pom.xml
jetty-deploy/pom.xml
jetty-distribution/pom.xml
jetty-http/pom.xml
jetty-io/pom.xml
jetty-jaas/pom.xml
jetty-jaspi/pom.xml
jetty-jmx/pom.xml
jetty-jndi/pom.xml
jetty-jsp/pom.xml
jetty-jspc-maven-plugin/pom.xml
jetty-maven-plugin/pom.xml
jetty-monitor/pom.xml
jetty-nosql/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/jetty-osgi-npn/pom.xml
jetty-osgi/pom.xml
jetty-osgi/test-jetty-osgi-context/pom.xml
jetty-osgi/test-jetty-osgi-webapp/pom.xml
jetty-plus/pom.xml
jetty-proxy/pom.xml
jetty-rewrite/pom.xml
jetty-runner/pom.xml
jetty-security/pom.xml
jetty-server/pom.xml
jetty-servlet/pom.xml
jetty-servlets/pom.xml
jetty-spdy/pom.xml
jetty-spdy/spdy-client/pom.xml
jetty-spdy/spdy-core/pom.xml
jetty-spdy/spdy-example-webapp/pom.xml
jetty-spdy/spdy-http-server/pom.xml
jetty-spdy/spdy-server/pom.xml
jetty-spring/pom.xml
jetty-start/pom.xml
jetty-util-ajax/pom.xml
jetty-util/pom.xml
jetty-webapp/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-server/src/test/java/org/eclipse/jetty/websocket/server/ab/Fuzzer.java
jetty-websocket/websocket-servlet/pom.xml
jetty-xml/pom.xml
pom.xml
tests/pom.xml
tests/test-continuation/pom.xml
tests/test-loginservice/pom.xml
tests/test-sessions/pom.xml
tests/test-sessions/test-hash-sessions/pom.xml
tests/test-sessions/test-jdbc-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
2013-06-27 09:12:28 +10:00
Joakim Erdfelt
78b5f7df1f
[maven-release-plugin] prepare for next development iteration
2013-06-25 08:29:26 -07:00
Joakim Erdfelt
5f2c937fcb
[maven-release-plugin] prepare release jetty-9.0.4.v20130625
2013-06-25 08:29:18 -07:00
Joakim Erdfelt
31faf2fe20
Reverting failed release from friday
2013-06-25 07:42:45 -07:00
Joakim Erdfelt
1f21c96f6c
411545 - SslConnection.DecryptedEndpoint.fill() sometimes misses a few network bytes
...
+ Adding continuation in this rare SSL case to allow the remaining bytes
to be read properly.
2013-06-25 07:38:17 -07:00
Greg Wilkins
c0facf57f6
398467 simplified AbstractConnection fill interest handling
2013-06-24 14:36:22 +10:00
Jesse McConnell
57bfda2a08
[maven-release-plugin] prepare for next development iteration
2013-06-21 09:49:25 -05:00
Jesse McConnell
c1082ad4d4
[maven-release-plugin] prepare release jetty-9.0.4.v20130621
2013-06-21 09:49:15 -05:00
Greg Wilkins
4e4ffaa54c
Merge remote-tracking branch 'origin/master' into servlet-3.1-api
...
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannelState.java
jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java
2013-06-17 16:29:39 +10:00
Jesse McConnell
eddb49941d
[Bug 408600] set correct jetty.url in all pom files
2013-06-12 15:52:36 -05:00
Greg Wilkins
955e7e8d74
410559 Removed FillInterest race
2013-06-12 18:35:13 +10:00
Greg Wilkins
d2794584e1
Merge remote-tracking branch 'origin/master' into servlet-3.1-api
...
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java
jetty-server/src/main/java/org/eclipse/jetty/server/Response.java
2013-06-07 15:48:22 +10:00
Greg Wilkins
6732dcfe76
409403 fix IllegalStateException when SPDY is used and the response is written through BufferUtil.writeTo byte by byte
...
Removed the clear from ChannelEndPoint#flush
2013-06-06 17:13:45 +10:00
Greg Wilkins
15e0d50b79
Merge remote-tracking branch 'origin/master' into servlet-3.1-api
2013-05-23 09:50:27 +10:00
Jesse McConnell
74a4077dad
Add package-info.java files to all jetty packages.
2013-05-21 15:09:49 -05:00
Jesse McConnell
3d600ed95e
[maven-release-plugin] prepare for next development iteration
2013-05-06 18:13:04 -05:00
Jesse McConnell
d832f3dc7e
[maven-release-plugin] prepare release jetty-9.0.3.v20130506
2013-05-06 18:12:55 -05:00
Jan Bartel
e7ecfd2b2b
Merge remote-tracking branch 'origin/master' into servlet-3.1-api
...
Conflicts:
jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java
2013-05-02 09:07:24 +10:00
Simone Bordet
b67f8204a5
Reverted commit 39d690e
.
2013-04-30 12:24:40 +02:00
Greg Wilkins
7955548d10
406390 Close if at END and content remaining
2013-04-29 14:01:11 +10:00
Greg Wilkins
a7073d05a6
updated version to 9.1.0-SNAPSHOT
2013-04-19 13:59:18 +10:00
Jesse McConnell
7baaa14ba1
[maven-release-plugin] prepare for next development iteration
2013-04-17 11:46:39 -05:00
Jesse McConnell
e390b54b25
[maven-release-plugin] prepare release jetty-9.0.2.v20140417
2013-04-17 11:46:31 -05:00
Jesse McConnell
0b20467c6f
[maven-release-plugin] prepare for next development iteration
2013-04-15 11:40:45 -05:00
Jesse McConnell
3aa4301711
[maven-release-plugin] prepare release jetty-9.0.2.v20140415
2013-04-15 11:40:37 -05:00
Greg Wilkins
c912231d74
364921 - FIN WAIT sockets
2013-04-15 18:40:05 +10:00
Greg Wilkins
4b546de9c9
364921 - FIN WAIT sockets
2013-04-15 17:19:35 +10:00
Simone Bordet
70e6655ec5
364921 - FIN WAIT sockets.
...
Interim commit, as things are not working exactly right yet.
2013-04-12 23:17:24 +02:00
Greg Wilkins
9885449bdf
364921 improved close of SSL to avoid FINWAITs
2013-04-12 20:37:13 +10:00
Greg Wilkins
b8dd8bde14
[maven-release-plugin] prepare for next development iteration
2013-04-08 12:31:34 +10:00
Greg Wilkins
bf3771904b
[maven-release-plugin] prepare release jetty-9.0.1.v20130408
2013-04-08 12:30:59 +10:00
Greg Wilkins
39d690ed2a
404889 SelectorManager accepts attachments with sockets
2013-04-05 15:36:23 +11:00
Simone Bordet
c5931ad56f
404610 - Reintroduce ability to disallow TLS renegotiation.
...
After review with Greg, avoid to clear the encrypted buffer after detection of reconnection denied.
2013-04-05 01:26:51 +02:00
Greg Wilkins
5d451e5fec
Merge branch 'master' of ssh://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.project
2013-04-05 08:31:48 +11:00
Greg Wilkins
1191142c97
Merge remote-tracking branch 'origin/jetty-8'
...
Conflicts:
jetty-io/src/main/java/org/eclipse/jetty/io/nio/SelectChannelEndPoint.java
jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java
2013-04-05 08:31:31 +11:00
Simone Bordet
72219d016b
404610 - Reintroduce ability to disallow TLS renegotiation.
2013-04-04 17:11:01 +02:00
Greg Wilkins
e9185aa062
Merge remote-tracking branch 'origin/jetty-7' into jetty-8
2013-04-04 16:09:19 +11:00
Greg Wilkins
df6e18cc00
404517 Close connection if request received after half close
2013-04-04 15:38:15 +11:00
Simone Bordet
b312fffd7e
402666 - Improve handling of TLS exceptions due to raw socket close.
2013-03-29 16:57:05 +01:00
Greg Wilkins
76607e20a5
403591 do not use the ConcurrentArrayBlockingQueue for thread pool, selector and async request log
2013-03-18 16:19:58 +11:00
Greg Wilkins
8514e8452b
403591 use the ConcurrentArrayBlockingQueue for thread pool, selector and async request log
2013-03-18 15:37:00 +11:00
Greg Wilkins
5f1980f408
merged unsafe blocking Q, removed unsafe usage and usage of Q
2013-03-18 13:27:37 +11:00
Greg Wilkins
ba9d70589a
Merge branch 'master' into unsafe
2013-03-18 12:02:37 +11:00
Simone Bordet
d6cac8cf0d
403451 - Review synchronization in SslConnection.
...
The review consisted in finding all the places where SslConnection was calling application code
and made sure those call where performed outside synchronized blocks.
The few calls that remain within synchronized blocks are SslConnection.fillInterested() and
SelectChannelEndPoint.write(...), which are dealing with the encrypted connection and do not
call application code.
2013-03-15 16:37:56 +01:00
Simone Bordet
b66ec3d57e
Made isOpen() public to avoid clashes with AbstractEndPoint.
2013-03-15 16:37:56 +01:00
Joakim Erdfelt
8a96cc8c4a
Merge branch 'jetty-7' into jetty-8
2013-03-14 16:54:35 -07:00
Joakim Erdfelt
5084a1430f
Fixing build.
...
+ Bumping jetty-test-helper to 2.0
+ Bumping jetty-version-maven-plugin to 1.0.10
+ Fixing JDK 1.5 build warts
+ Updating Stress use for new "test.stress" property introduced by upgrades
2013-03-14 16:52:52 -07:00
Simone Bordet
e40e2a9913
Merged branch 'master' into 'unsafe'.
2013-03-13 22:37:36 +01:00
Jesse McConnell
acb5919844
[maven-release-plugin] prepare for next development iteration
2013-03-12 09:10:50 -05:00
Jesse McConnell
d6ebdc0a4a
[maven-release-plugin] prepare release jetty-7.6.10.v20130312
2013-03-12 09:10:42 -05:00
Jesse McConnell
0405c8ded6
[maven-release-plugin] prepare for next development iteration
2013-03-12 09:05:25 -05:00
Jesse McConnell
852178cd01
[maven-release-plugin] prepare release jetty-8.1.10.v20130312
2013-03-12 09:05:14 -05:00
Joakim Erdfelt
897c35c2cb
[maven-release-plugin] prepare for next development iteration
2013-03-08 11:33:23 -07:00
Joakim Erdfelt
cc6196af50
[maven-release-plugin] prepare release jetty-9.0.0.v20130308
2013-03-08 11:33:15 -07:00
Joakim Erdfelt
7fc38f6c0f
[maven-release-plugin] prepare for next development iteration
2013-03-07 19:14:19 -07:00
Joakim Erdfelt
96d045442f
[maven-release-plugin] prepare release jetty-9.0.0.v20130307
2013-03-07 19:14:11 -07:00
Simone Bordet
91e5720ca2
Introduced a concurrent queue based on array chunks to reduce allocation,
...
to be used as drop-in replacement of j.u.c.ConcurrentLinkedQueue.
Using it in SelectorManager.ManagedSelector, but build fails on OSGi.
2013-03-07 10:00:50 +01:00
Jesse McConnell
778ee1411b
[maven-release-plugin] prepare for next development iteration
2013-03-06 10:21:46 -06:00
Jesse McConnell
d916078711
[maven-release-plugin] prepare release jetty-9.0.0.v20130306
2013-03-06 10:21:38 -06:00
Greg Wilkins
056be85766
less verbose exception
2013-03-04 16:40:18 +11:00
Simone Bordet
2feafb9a97
402090 - httpsender PendingState cause uncertain data send to server.
...
WriteFlusher was storing consumed buffers that may have been reused,
and when the write was being completed those consumed buffer may have
contained new content that was being written too.
Fixed by compacting the buffers at the moment of creation of the
WriteFlusher.PendingState (and not at the moment of the completeWrite() like
it was in historically done, see 4e94601619
).
2013-03-01 14:30:51 +01:00
Greg Wilkins
718ee4ddeb
402075 Cancel idle timeouts on close
2013-03-01 14:09:04 +11:00
Joakim Erdfelt
29b2118870
[maven-release-plugin] prepare for next development iteration
2013-02-26 09:20:45 -07:00
Joakim Erdfelt
2b82b54f6d
[maven-release-plugin] prepare release jetty-9.0.0.RC2
2013-02-26 09:20:45 -07:00
Jan Bartel
6a48749f0c
Merge remote-tracking branch 'origin/jetty-7' into jetty-8
...
Conflicts:
jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java
2013-02-22 11:32:57 +11:00
Simone Bordet
ecfd7f74e6
376273 - Early EOF because of SSL Protocol Error on https://api-3t.paypal.com/nvp .
...
This was caused by the fact that the other peer closed the raw socket after sending data.
SslConnection was reading the data, but not notifying the application of the data, then
reading the abrupt close, which was causing an exception, ending up in the application
never being notified of the data that arrived.
Now we catch and ignore the exception during SSLEngine.closeInbound(), and we properly
send an alert to the other peer (instead of hard closing the connection as well).
In this way, the application has the chance to read the data and then close the connection.
2013-02-21 17:15:19 +01:00
Greg Wilkins
68f3319719
Merge remote-tracking branch 'origin/jetty-7' into jetty-8
2013-02-15 12:14:48 +11:00
Greg Wilkins
c7d985fa02
400859 limit max size of writes from cached content
2013-02-15 11:20:29 +11:00
Joakim Erdfelt
ebaffcfd27
399535 - Websocket-client connect should have configurable connect timeout
...
+ Made default value for connectTimeout be exposed from SelectorManager.
+ Added javadoc on time unit.
2013-02-12 12:56:46 -07:00
Joakim Erdfelt
4dc3ed38c2
[maven-release-plugin] prepare for next development iteration
2013-02-05 10:00:36 -07:00
Joakim Erdfelt
ed24f78498
[maven-release-plugin] prepare release jetty-9.0.0.RC0
2013-02-05 10:00:36 -07:00
Jesse McConnell
e073ceb06d
[maven-release-plugin] prepare for next development iteration
2013-02-05 10:00:36 -07:00
Jesse McConnell
2f2ad287af
[maven-release-plugin] prepare release jetty-9.0.0.RC0
2013-02-05 10:00:35 -07:00
Jesse McConnell
5c58878c3c
[maven-release-plugin] prepare for next development iteration
2013-01-31 11:34:38 -06:00
Jesse McConnell
ebbe37294f
[maven-release-plugin] prepare release jetty-8.1.9.v20130131
2013-01-31 11:34:30 -06:00
Jesse McConnell
a5e1e04af1
[maven-release-plugin] prepare for next development iteration
2013-01-31 08:42:20 -06:00
Jesse McConnell
b7fb18fd65
[maven-release-plugin] prepare release jetty-7.6.9.v20130131
2013-01-31 08:42:12 -06:00
Jan Bartel
495230579c
399576 Server dumpStdErr throws exception if server is stopping
2013-01-31 15:45:57 +11:00
Simone Bordet
b2f3852fb3
398872 - SslConnection should not be notified of idle timeouts. First solution.
2013-01-24 10:29:27 +01:00
Thomas Becker
9ebea3938d
393385: Make hostname verification configurable in SslContextFactory and enable it by default (See http://www.ietf.org/rfc/rfc2818.txt section 3.1)
2013-01-17 10:28:15 +01:00
Joakim Erdfelt
c631d9b461
Removing noisy logging/debugging
2013-01-16 15:11:57 -07:00
Joakim Erdfelt
1dfee4c992
393733 - WebSocketClient interface should support multiple connections
...
+ Reworking Connection Timeout handling
2013-01-16 15:11:57 -07:00
Jesse McConnell
e1c516c7d1
merge from jetty-8 and update license blocks.
2013-01-11 17:04:53 -06:00
Jesse McConnell
863944873d
merge from 7 and update license blocks for 2013
2013-01-11 15:01:16 -06:00
Jesse McConnell
a4dbb5823c
update license blocks for 2013
2013-01-11 14:57:51 -06:00
Greg Wilkins
27c31fb403
jetty-9 organised imports. Cleaned up some TODOs
2013-01-11 16:37:32 +11:00
Greg Wilkins
b5d4add750
jetty-9 copyright header
2013-01-11 16:02:33 +11:00
Greg Wilkins
76c068dfe6
jetty-9 refined the IdleTimeout mechanism and added a unit test
2013-01-11 13:06:42 +11:00
Greg Wilkins
6bfc19be1b
jetty-9 optimisation to dispatch before parsing so that handling is done in same thread
2012-12-14 09:50:22 +11:00
Joakim Erdfelt
be83cb100d
Adding java assert() on bad buffer release, per discussion with Simone and Jesse
2012-12-12 11:06:15 -07:00
Joakim Erdfelt
3fd59fa189
Rejecting BufferPool.release() of buffers below factor
2012-12-11 13:01:54 -07:00