-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue #12266 - InvocationType improvements and cleanups. #12551
Issue #12266 - InvocationType improvements and cleanups. #12551
Conversation
This is the work for the server-side only, the client side will be done in another pull request. Previously, AbstractConnection.getInvocationType() was called by AbstractConnection.ReadCallback, but it was deprecated and is now removed, along with all its overrides. This mechanism is now replaced by using a specific Callback implementation for each AbstractConnection subclass. For example, HttpConnection uses HttpConnection.FillableCallback that in turn asks the InvocationType to the Server, and therefore the `Handler` tree. Restored synchronous code for ServerFCGIConnection.close(), ensuring super.close() is always called. Ensuring that in HttpConnection.close(), super.close() is always called. Signed-off-by: Simone Bordet <[email protected]>
@gregw @lorban I decided to split #12299 into server (this PR) and client (a future PR). The original problem is that we can easily guarantee user code invoked by a virtual thread in the server, but not so much in the client (I know). This PR cleans up the code for the server, mostly just removing deprecated code and little other cleanups. The work to be done for the client is larger, and will be address later in a different PR, and eventually #12299 will be closed without merging it. |
Signed-off-by: Simone Bordet <[email protected]>
Improved messages used on more modules
…cationtype-cleanups'. Signed-off-by: Simone Bordet <[email protected]>
…for idle timeout and failure tasks. * Small code improvements. Signed-off-by: Simone Bordet <[email protected]>
… error response) and the promise (resetting the stream). Signed-off-by: Simone Bordet <[email protected]>
...ttp2-server/src/main/java/org/eclipse/jetty/http2/server/internal/HTTP2ServerConnection.java
Outdated
Show resolved
Hide resolved
...ttp2-server/src/main/java/org/eclipse/jetty/http2/server/internal/HTTP2ServerConnection.java
Outdated
Show resolved
Hide resolved
...-http3-server/src/main/java/org/eclipse/jetty/http3/server/HTTP3ServerConnectionFactory.java
Outdated
Show resolved
Hide resolved
jetty-core/jetty-io/src/main/java/org/eclipse/jetty/io/AbstractConnection.java
Outdated
Show resolved
Hide resolved
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good other than a couple of questions
...etty-client/src/main/java/org/eclipse/jetty/client/ProxyProtocolClientConnectionFactory.java
Show resolved
Hide resolved
jetty-core/jetty-util/src/main/java/org/eclipse/jetty/util/thread/ThreadPool.java
Outdated
Show resolved
Hide resolved
…cationtype-cleanups'. Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
This is the work for the server-side only, the client side will be done in another pull request.
Previously, AbstractConnection.getInvocationType() was called by AbstractConnection.ReadCallback, but it was deprecated and is now removed, along with all its overrides.
This mechanism is now replaced by using a specific Callback implementation for each AbstractConnection subclass. For example, HttpConnection uses HttpConnection.FillableCallback that in turn asks the InvocationType to the Server, and therefore the
Handler
tree.Restored synchronous code for ServerFCGIConnection.close(), ensuring super.close() is always called. Ensuring that in HttpConnection.close(), super.close() is always called.