Commit Graph

1103 Commits

Author SHA1 Message Date
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