[tomcat] 02/02: http2: Add 'EndOfStream' to the logs for writeHeaders and writeBody
This is an automated email from the ASF dual-hosted git repository. mgrigorov pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git commit b8e5607a4fccfd47ad653c5788ac1ba052411094 Author: Martin Tzvetanov Grigorov AuthorDate: Thu Sep 24 13:46:31 2020 +0300 http2: Add 'EndOfStream' to the logs for writeHeaders and writeBody Mark Http2AsyncUpgradeHandler#errorCompletion and #applicationErrorCompletion as final. Call streams.size() just once. Extract local variables and reuse them instead of calling getters on every usage (cherry picked from commit 6f178006f246ce9248a349705ba79d054d189b70) --- .../coyote/http2/Http2AsyncUpgradeHandler.java | 6 +++--- .../apache/coyote/http2/Http2UpgradeHandler.java | 22 -- .../apache/coyote/http2/LocalStrings.properties| 4 ++-- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java b/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java index 21c8fa8..eb116a7 100644 --- a/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java +++ b/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java @@ -51,7 +51,7 @@ public class Http2AsyncUpgradeHandler extends Http2UpgradeHandler { super(protocol, adapter, coyoteRequest); } -private CompletionHandler errorCompletion = new CompletionHandler() { +private final CompletionHandler errorCompletion = new CompletionHandler() { @Override public void completed(Long result, Void attachment) { } @@ -60,7 +60,7 @@ public class Http2AsyncUpgradeHandler extends Http2UpgradeHandler { error = t; } }; -private CompletionHandler applicationErrorCompletion = new CompletionHandler() { +private final CompletionHandler applicationErrorCompletion = new CompletionHandler() { @Override public void completed(Long result, Void attachment) { } @@ -199,7 +199,7 @@ public class Http2AsyncUpgradeHandler extends Http2UpgradeHandler { void writeBody(Stream stream, ByteBuffer data, int len, boolean finished) throws IOException { if (log.isDebugEnabled()) { log.debug(sm.getString("upgradeHandler.writeBody", connectionId, stream.getIdAsString(), -Integer.toString(len))); +Integer.toString(len), Boolean.valueOf(finished))); } // Need to check this now since sending end of stream will change this. boolean writeable = stream.canWrite(); diff --git a/java/org/apache/coyote/http2/Http2UpgradeHandler.java b/java/org/apache/coyote/http2/Http2UpgradeHandler.java index 98a5438..dbd7491 100644 --- a/java/org/apache/coyote/http2/Http2UpgradeHandler.java +++ b/java/org/apache/coyote/http2/Http2UpgradeHandler.java @@ -665,7 +665,7 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH if (log.isDebugEnabled()) { if (pushedStreamId == 0) { log.debug(sm.getString("upgradeHandler.writeHeaders", connectionId, -stream.getIdAsString())); +stream.getIdAsString(), Boolean.valueOf(endOfStream))); } else { log.debug(sm.getString("upgradeHandler.writePushHeaders", connectionId, stream.getIdAsString(), Integer.valueOf(pushedStreamId), @@ -1160,9 +1160,10 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH // maximum number of concurrent streams long max = localSettings.getMaxConcurrentStreams(); +final int size = streams.size(); if (log.isDebugEnabled()) { log.debug(sm.getString("upgradeHandler.pruneStart", connectionId, -Long.toString(max), Integer.toString(streams.size(; +Long.toString(max), Integer.toString(size))); } // Allow an additional 10% for closed streams that are used in the @@ -1172,7 +1173,7 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH max = Integer.MAX_VALUE; } -int toClose = streams.size() - (int) max; +int toClose = size - (int) max; if (toClose < 1) { return; } @@ -1199,16 +1200,17 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH continue; } +final Integer streamIdentifier = entry.getKey(); if (stream.isClosedFinal()) { // This stream went from IDLE to CLOSED and is likely to have // been created by the client as part of the priority tree. -candidatesStepThree.add(entry.getKey()); +candidatesStepThree.add(streamIdentifier); } else if (stream.getChildStreams().size() == 0) {
[tomcat] 02/02: http2: Add 'EndOfStream' to the logs for writeHeaders and writeBody
This is an automated email from the ASF dual-hosted git repository. mgrigorov pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tomcat.git commit 6f178006f246ce9248a349705ba79d054d189b70 Author: Martin Tzvetanov Grigorov AuthorDate: Thu Sep 24 13:46:31 2020 +0300 http2: Add 'EndOfStream' to the logs for writeHeaders and writeBody Mark Http2AsyncUpgradeHandler#errorCompletion and #applicationErrorCompletion as final. Call streams.size() just once. Extract local variables and reuse them instead of calling getters on every usage --- .../coyote/http2/Http2AsyncUpgradeHandler.java | 6 +++--- .../apache/coyote/http2/Http2UpgradeHandler.java | 22 -- .../apache/coyote/http2/LocalStrings.properties| 4 ++-- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java b/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java index 951c21c..9c274ac 100644 --- a/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java +++ b/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java @@ -51,7 +51,7 @@ public class Http2AsyncUpgradeHandler extends Http2UpgradeHandler { super(protocol, adapter, coyoteRequest); } -private CompletionHandler errorCompletion = new CompletionHandler() { +private final CompletionHandler errorCompletion = new CompletionHandler() { @Override public void completed(Long result, Void attachment) { } @@ -60,7 +60,7 @@ public class Http2AsyncUpgradeHandler extends Http2UpgradeHandler { error = t; } }; -private CompletionHandler applicationErrorCompletion = new CompletionHandler() { +private final CompletionHandler applicationErrorCompletion = new CompletionHandler() { @Override public void completed(Long result, Void attachment) { } @@ -199,7 +199,7 @@ public class Http2AsyncUpgradeHandler extends Http2UpgradeHandler { void writeBody(Stream stream, ByteBuffer data, int len, boolean finished) throws IOException { if (log.isDebugEnabled()) { log.debug(sm.getString("upgradeHandler.writeBody", connectionId, stream.getIdAsString(), -Integer.toString(len))); +Integer.toString(len), Boolean.valueOf(finished))); } // Need to check this now since sending end of stream will change this. boolean writeable = stream.canWrite(); diff --git a/java/org/apache/coyote/http2/Http2UpgradeHandler.java b/java/org/apache/coyote/http2/Http2UpgradeHandler.java index bc6fed0..152b2f3 100644 --- a/java/org/apache/coyote/http2/Http2UpgradeHandler.java +++ b/java/org/apache/coyote/http2/Http2UpgradeHandler.java @@ -665,7 +665,7 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH if (log.isDebugEnabled()) { if (pushedStreamId == 0) { log.debug(sm.getString("upgradeHandler.writeHeaders", connectionId, -stream.getIdAsString())); +stream.getIdAsString(), Boolean.valueOf(endOfStream))); } else { log.debug(sm.getString("upgradeHandler.writePushHeaders", connectionId, stream.getIdAsString(), Integer.valueOf(pushedStreamId), @@ -1160,9 +1160,10 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH // maximum number of concurrent streams long max = localSettings.getMaxConcurrentStreams(); +final int size = streams.size(); if (log.isDebugEnabled()) { log.debug(sm.getString("upgradeHandler.pruneStart", connectionId, -Long.toString(max), Integer.toString(streams.size(; +Long.toString(max), Integer.toString(size))); } // Allow an additional 10% for closed streams that are used in the @@ -1172,7 +1173,7 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH max = Integer.MAX_VALUE; } -int toClose = streams.size() - (int) max; +int toClose = size - (int) max; if (toClose < 1) { return; } @@ -1199,16 +1200,17 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH continue; } +final Integer streamIdentifier = entry.getKey(); if (stream.isClosedFinal()) { // This stream went from IDLE to CLOSED and is likely to have // been created by the client as part of the priority tree. -candidatesStepThree.add(entry.getKey()); +candidatesStepThree.add(streamIdentifier); } else if (stream.getChildStreams().size() == 0) { // Closed, no children -