This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 5295fbc7cf0a3b487f92194d5184810fe9557292 Author: Mark Thomas <ma...@apache.org> AuthorDate: Thu Sep 24 17:50:43 2020 +0100 Reduce memory footprint of closed http/2 streams This refactoring replaces closed streams with a new RecycledStream object and changes the mechanism used to look up known streams. Pull-up isClosedFinal() --- java/org/apache/coyote/http2/AbstractNonZeroStream.java | 1 + java/org/apache/coyote/http2/RecycledStream.java | 8 ++++++++ java/org/apache/coyote/http2/Stream.java | 3 ++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/java/org/apache/coyote/http2/AbstractNonZeroStream.java b/java/org/apache/coyote/http2/AbstractNonZeroStream.java index e76496d..d1eb38a 100644 --- a/java/org/apache/coyote/http2/AbstractNonZeroStream.java +++ b/java/org/apache/coyote/http2/AbstractNonZeroStream.java @@ -97,4 +97,5 @@ abstract class AbstractNonZeroStream extends AbstractStream { this.weight = weight; } + abstract boolean isClosedFinal(); } diff --git a/java/org/apache/coyote/http2/RecycledStream.java b/java/org/apache/coyote/http2/RecycledStream.java index 17a02cb..c17ae02 100644 --- a/java/org/apache/coyote/http2/RecycledStream.java +++ b/java/org/apache/coyote/http2/RecycledStream.java @@ -23,10 +23,12 @@ package org.apache.coyote.http2; class RecycledStream extends AbstractNonZeroStream { private final String connectionId; + private final boolean closedFinal; RecycledStream(Stream stream) { super(stream.getIdentifier(), stream.getWeight()); connectionId = stream.getConnectionId(); + closedFinal = stream.isClosedFinal(); } @@ -37,6 +39,12 @@ class RecycledStream extends AbstractNonZeroStream { @Override + boolean isClosedFinal() { + return closedFinal; + } + + + @Override @Deprecated protected synchronized void doNotifyAll() { // NO-OP. Unused. diff --git a/java/org/apache/coyote/http2/Stream.java b/java/org/apache/coyote/http2/Stream.java index be33904..5f3543f 100644 --- a/java/org/apache/coyote/http2/Stream.java +++ b/java/org/apache/coyote/http2/Stream.java @@ -612,7 +612,8 @@ public class Stream extends AbstractNonZeroStream implements HeaderEmitter { } - boolean isClosedFinal() { + @Override + final boolean isClosedFinal() { return state.isClosedFinal(); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org