Buildbot success in on tomcat-10.1.x

2022-12-16 Thread buildbot
Build status: Build succeeded!
Worker used: bb2_worker2_ubuntu
URL: https://ci2.apache.org/#builders/44/builds/606
Blamelist: Mark Thomas 
Build Text: build successful
Status Detected: restored build
Build Source Stamp: [branch 10.1.x] 9ff44bd2b75a99865fe4886c094ab120b748beb2


Steps:

  worker_preparation: 0

  git: 0

  shell: 0

  shell_1: 0

  shell_2: 0

  shell_3: 0

  shell_4: 0

  shell_5: 0

  compile: 1

  shell_6: 0

  shell_7: 0

  shell_8: 0

  shell_9: 0

  Rsync docs to nightlies.apache.org: 0

  shell_10: 0

  Rsync RAT to nightlies.apache.org: 0

  compile_1: 1

  shell_11: 0

  Rsync Logs to nightlies.apache.org: 0


-- ASF Buildbot


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[tomcat] branch 8.5.x updated: Fix dropped HTTP/2 responses.

2022-12-16 Thread markt
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


The following commit(s) were added to refs/heads/8.5.x by this push:
 new f9f37b251a Fix dropped HTTP/2 responses.
f9f37b251a is described below

commit f9f37b251a1d7f34d881b920ccda3969719c2c83
Author: Mark Thomas 
AuthorDate: Fri Dec 16 20:37:03 2022 +

Fix dropped HTTP/2 responses.

When resetting an HTTP/2 stream because the final response has been
generated before the request has been fully read, use the HTTP/2 error
code NO_ERROR so that client does not discard the response.

Based on a suggestion by Lorenzo Dalla Vecchia.
---
 java/org/apache/coyote/http2/StreamProcessor.java | 2 +-
 test/org/apache/coyote/http2/TestFlowControl.java | 2 +-
 webapps/docs/changelog.xml| 6 ++
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/java/org/apache/coyote/http2/StreamProcessor.java 
b/java/org/apache/coyote/http2/StreamProcessor.java
index 734a4cb3ad..6bfb7e7864 100644
--- a/java/org/apache/coyote/http2/StreamProcessor.java
+++ b/java/org/apache/coyote/http2/StreamProcessor.java
@@ -94,7 +94,7 @@ class StreamProcessor extends AbstractProcessor {
 // send any more data on this stream (reset).
 StreamException se = new StreamException(
 sm.getString("streamProcessor.cancel", 
stream.getConnectionId(),
-stream.getIdAsString()), 
Http2Error.CANCEL, stream.getIdAsInt());
+stream.getIdAsString()), 
Http2Error.NO_ERROR, stream.getIdAsInt());
 stream.close(se);
 } else if (!getErrorState().isConnectionIoAllowed()) {
 ConnectionException ce = new 
ConnectionException(sm.getString(
diff --git a/test/org/apache/coyote/http2/TestFlowControl.java 
b/test/org/apache/coyote/http2/TestFlowControl.java
index 60269389e1..8d45ce86d7 100644
--- a/test/org/apache/coyote/http2/TestFlowControl.java
+++ b/test/org/apache/coyote/http2/TestFlowControl.java
@@ -109,7 +109,7 @@ public class TestFlowControl extends Http2TestBase {
 "3-HeadersEnd\n" +
 "3-Body-" + contentLength + "\n" +
 "3-EndOfStream\n" +
-"3-RST-[8]\n", output.getTrace());
+"3-RST-[0]\n", output.getTrace());
 output.clearTrace();
 
 // Write 3*16k=48k of request body
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index a5594a135f..484306e1d3 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -133,6 +133,12 @@
 stream count limit was reached and no new streams could be created on
 that connection. (markt)
   
+  
+66388: Correct a regression in the refactoring that replaced
+the use of the URL constructors. The regression broke
+lookups for resources that contained one or more characters in their
+name that required escaping when used in a URI path. (markt)
+  
 
   
   


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[tomcat] branch 9.0.x updated: Fix dropped HTTP/2 responses.

2022-12-16 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
 new 448d02cdb2 Fix dropped HTTP/2 responses.
448d02cdb2 is described below

commit 448d02cdb2b5a16127f3087e0bfeb9d1822c1367
Author: Mark Thomas 
AuthorDate: Fri Dec 16 20:37:03 2022 +

Fix dropped HTTP/2 responses.

When resetting an HTTP/2 stream because the final response has been
generated before the request has been fully read, use the HTTP/2 error
code NO_ERROR so that client does not discard the response.

Based on a suggestion by Lorenzo Dalla Vecchia.
---
 java/org/apache/coyote/http2/StreamProcessor.java |  2 +-
 test/org/apache/coyote/http2/TestFlowControl.java |  2 +-
 webapps/docs/changelog.xml| 10 ++
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/java/org/apache/coyote/http2/StreamProcessor.java 
b/java/org/apache/coyote/http2/StreamProcessor.java
index 8582473521..cb946bff58 100644
--- a/java/org/apache/coyote/http2/StreamProcessor.java
+++ b/java/org/apache/coyote/http2/StreamProcessor.java
@@ -97,7 +97,7 @@ class StreamProcessor extends AbstractProcessor {
 // send any more data on this stream (reset).
 StreamException se = new StreamException(
 sm.getString("streamProcessor.cancel", 
stream.getConnectionId(),
-stream.getIdAsString()), 
Http2Error.CANCEL, stream.getIdAsInt());
+stream.getIdAsString()), 
Http2Error.NO_ERROR, stream.getIdAsInt());
 stream.close(se);
 } else if (!getErrorState().isConnectionIoAllowed()) {
 ConnectionException ce = new 
ConnectionException(sm.getString(
diff --git a/test/org/apache/coyote/http2/TestFlowControl.java 
b/test/org/apache/coyote/http2/TestFlowControl.java
index 60269389e1..8d45ce86d7 100644
--- a/test/org/apache/coyote/http2/TestFlowControl.java
+++ b/test/org/apache/coyote/http2/TestFlowControl.java
@@ -109,7 +109,7 @@ public class TestFlowControl extends Http2TestBase {
 "3-HeadersEnd\n" +
 "3-Body-" + contentLength + "\n" +
 "3-EndOfStream\n" +
-"3-RST-[8]\n", output.getTrace());
+"3-RST-[0]\n", output.getTrace());
 output.clearTrace();
 
 // Write 3*16k=48k of request body
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index e5b523842d..ab3f798683 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -115,6 +115,16 @@
   
 
   
+  
+
+  
+When resetting an HTTP/2 stream because the final response has been
+generated before the request has been fully read, use the HTTP/2 error
+code NO_ERROR so that client does not discard the 
response.
+Based on a suggestion by Lorenzo Dalla Vecchia. (markt)
+  
+
+  
 
 
   


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[tomcat] branch 10.1.x updated: Fix dropped HTTP/2 responses.

2022-12-16 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/10.1.x by this push:
 new 9ff44bd2b7 Fix dropped HTTP/2 responses.
9ff44bd2b7 is described below

commit 9ff44bd2b75a99865fe4886c094ab120b748beb2
Author: Mark Thomas 
AuthorDate: Fri Dec 16 20:37:03 2022 +

Fix dropped HTTP/2 responses.

When resetting an HTTP/2 stream because the final response has been
generated before the request has been fully read, use the HTTP/2 error
code NO_ERROR so that client does not discard the response.

Based on a suggestion by Lorenzo Dalla Vecchia.
---
 java/org/apache/coyote/http2/StreamProcessor.java |  2 +-
 test/org/apache/coyote/http2/TestFlowControl.java |  2 +-
 webapps/docs/changelog.xml| 10 ++
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/java/org/apache/coyote/http2/StreamProcessor.java 
b/java/org/apache/coyote/http2/StreamProcessor.java
index 5572e070c9..3afda9037b 100644
--- a/java/org/apache/coyote/http2/StreamProcessor.java
+++ b/java/org/apache/coyote/http2/StreamProcessor.java
@@ -97,7 +97,7 @@ class StreamProcessor extends AbstractProcessor {
 // send any more data on this stream (reset).
 StreamException se = new StreamException(
 sm.getString("streamProcessor.cancel", 
stream.getConnectionId(),
-stream.getIdAsString()), 
Http2Error.CANCEL, stream.getIdAsInt());
+stream.getIdAsString()), 
Http2Error.NO_ERROR, stream.getIdAsInt());
 stream.close(se);
 } else if (!getErrorState().isConnectionIoAllowed()) {
 ConnectionException ce = new 
ConnectionException(sm.getString(
diff --git a/test/org/apache/coyote/http2/TestFlowControl.java 
b/test/org/apache/coyote/http2/TestFlowControl.java
index 60269389e1..8d45ce86d7 100644
--- a/test/org/apache/coyote/http2/TestFlowControl.java
+++ b/test/org/apache/coyote/http2/TestFlowControl.java
@@ -109,7 +109,7 @@ public class TestFlowControl extends Http2TestBase {
 "3-HeadersEnd\n" +
 "3-Body-" + contentLength + "\n" +
 "3-EndOfStream\n" +
-"3-RST-[8]\n", output.getTrace());
+"3-RST-[0]\n", output.getTrace());
 output.clearTrace();
 
 // Write 3*16k=48k of request body
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index acba8b8f2e..2149041f04 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -115,6 +115,16 @@
   
 
   
+  
+
+  
+When resetting an HTTP/2 stream because the final response has been
+generated before the request has been fully read, use the HTTP/2 error
+code NO_ERROR so that client does not discard the 
response.
+Based on a suggestion by Lorenzo Dalla Vecchia. (markt)
+  
+
+  
 
 
   


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[tomcat] branch main updated: Fix dropped HTTP/2 responses.

2022-12-16 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
 new 1e7e121cef Fix dropped HTTP/2 responses.
1e7e121cef is described below

commit 1e7e121cefe6dae4ef03bc046b9575192ff13cc1
Author: Mark Thomas 
AuthorDate: Fri Dec 16 20:37:03 2022 +

Fix dropped HTTP/2 responses.

When resetting an HTTP/2 stream because the final response has been
generated before the request has been fully read, use the HTTP/2 error
code NO_ERROR so that client does not discard the response.

Based on a suggestion by Lorenzo Dalla Vecchia.
---
 java/org/apache/coyote/http2/StreamProcessor.java | 2 +-
 test/org/apache/coyote/http2/TestFlowControl.java | 2 +-
 webapps/docs/changelog.xml| 6 ++
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/java/org/apache/coyote/http2/StreamProcessor.java 
b/java/org/apache/coyote/http2/StreamProcessor.java
index 5572e070c9..3afda9037b 100644
--- a/java/org/apache/coyote/http2/StreamProcessor.java
+++ b/java/org/apache/coyote/http2/StreamProcessor.java
@@ -97,7 +97,7 @@ class StreamProcessor extends AbstractProcessor {
 // send any more data on this stream (reset).
 StreamException se = new StreamException(
 sm.getString("streamProcessor.cancel", 
stream.getConnectionId(),
-stream.getIdAsString()), 
Http2Error.CANCEL, stream.getIdAsInt());
+stream.getIdAsString()), 
Http2Error.NO_ERROR, stream.getIdAsInt());
 stream.close(se);
 } else if (!getErrorState().isConnectionIoAllowed()) {
 ConnectionException ce = new 
ConnectionException(sm.getString(
diff --git a/test/org/apache/coyote/http2/TestFlowControl.java 
b/test/org/apache/coyote/http2/TestFlowControl.java
index 60269389e1..8d45ce86d7 100644
--- a/test/org/apache/coyote/http2/TestFlowControl.java
+++ b/test/org/apache/coyote/http2/TestFlowControl.java
@@ -109,7 +109,7 @@ public class TestFlowControl extends Http2TestBase {
 "3-HeadersEnd\n" +
 "3-Body-" + contentLength + "\n" +
 "3-EndOfStream\n" +
-"3-RST-[8]\n", output.getTrace());
+"3-RST-[0]\n", output.getTrace());
 output.clearTrace();
 
 // Write 3*16k=48k of request body
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 378bbc5ac0..f7685e8a37 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -136,6 +136,12 @@
 Add a parser for the priority HTTP header field defined in
 RFC 9218. (markt)
   
+  
+When resetting an HTTP/2 stream because the final response has been
+generated before the request has been fully read, use the HTTP/2 error
+code NO_ERROR so that client does not discard the 
response.
+Based on a suggestion by Lorenzo Dalla Vecchia. (markt)
+  
 
   
   


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: HTTP/2 priorities

2022-12-16 Thread Rémy Maucherat
On Tue, Dec 6, 2022 at 5:21 PM Mark Thomas  wrote:
>
> Hi all,
>
> I plan to implement RFC 9218 [1] for HTTP/2 in Tomcat 11. Depending on
> how that goes, I may back-port the changes.
>
> Given the difficulties we have in prioritizing creation of responses, I
> plan to continue the current approach of prioritizing the sending of
> data when the connection window size is smaller than the currently
> active streams have collectively requested.
>
> My rough plan at this stage, which is likely to change as I work through
> the implementation, is:
>
> - remove all the code that supports the current priority tree approach

I read the spec and this does sound interesting:
https://www.rfc-editor.org/rfc/rfc9218.html#name-incremental
This would solve the stream concurrency issue which heavily degrades
performance and had to be limited using maxConcurrentStreamExecution.

Rémy

> - include SETTINGS_NO_RFC7540_PRIORITIES in the initial settings
> - implement the new priority scheme - expected to be a much simpler
>algorithm in Http2UpgradeHandler.allocate()
>
> Mark
>
>
> [1] https://www.rfc-editor.org/rfc/rfc9218.html#name-priority-parameters
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 66392] AccessLogValue's file encoding does not correspond to the documentation

2022-12-16 Thread bugzilla
https://bz.apache.org/bugzilla/show_bug.cgi?id=66392

--- Comment #2 from Michael Osipov  ---
(In reply to Han Li from comment #1)
> (In reply to Michael Osipov from comment #0)
> > May java.nio.charset.Charset.defaultCharset() would be better here, no?
> No, I found the reason why not use java.nio.charset.Charset.defaultCharset()
> by git commit log. 
> https://github.com/apache/tomcat/commit/
> 972212836bf278e443b87418d961d6ddb04262a6
> 
> I also have a question based on the comment at BZ51408, is it time to use
> UTF-8 as the default encoding set now?

Looking that the commit, in several spots US-ASCII would be a better choice
because the usecase does not allow anything else but 7-bit chars. In this case,
yes I'd prefer UTF-8 all the way -- at least the documentation and code must be
consistent.

E.g., here
https://github.com/apache/tomcat/commit/972212836bf278e443b87418d961d6ddb04262a6#diff-95ff2368b8571e4f1439f6a6c954993bd9a1de99e7083b9f0c07bb39af7382a2R100.
US-ASCII is fully sufficient.

Similar case: https://github.com/apache/httpcomponents-core/pull/375

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org