Re: AW: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Mark Thomas

Try overheadCountFactor="0" rather than "-1"

Mark


On 21/02/2022 13:52, Deshmukh, Kedar wrote:

I am getting same error even I turned off overhead protection.



~Kedar

-Original Message-
From: Mark Thomas 
Sent: Monday, February 21, 2022 6:59 PM
To: users@tomcat.apache.org
Subject: Re: AW: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

External email from: users-return-274605-dkedar=ptc@tomcat.apache.org


On 21/02/2022 13:20, Thomas Hoffmann (Speed4Trade GmbH) wrote:

Hello,

you can adjust the threshold values for overhead limits:
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftomc
at.apache.org%2Ftomcat-9.0-doc%2Fconfig%2Fhttp2.htmldata=04%7C01%
7Cdkedar%40ptc.com%7C82e35a1bf9414b3942cb08d9f53e2399%7Cb9921086ff774d
0d828acb3381f678e2%7C0%7C0%7C637810469500707164%7CUnknown%7CTWFpbGZsb3
d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7
C3000sdata=owuUyOcX4i4P3xm5xbnICgneZ5Bbswg2HxJDoMyfpn0%3Dres
erved=0

I can't judge about why there are so many of such frames.


The debug log will show the overhead changing for each frame so there should be 
enough information in the logs to determine why the threshold is being reached.

Mark



Maybe only a wireshark dump would help to figure it out.

Greetings,
Thomas

-Ursprüngliche Nachricht-
Von: Deshmukh, Kedar 
Gesendet: Montag, 21. Februar 2022 13:38
An: Tomcat Users List 
Betreff: RE: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

Hello,

This seems to be an error " Too much overhead so the connection will be closed 
", I am using Chrome browser (Version 97.0.4692.71) on Windows 10.  It is 
consistently reproducible on chrome browser.

Here, I am trying to load home page of one of the application. It has some 
html, javascripts, css and few images. Entire page loads only 450 KB of data. 
And no issue with HTTP/1.1.

21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8]
org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17],
State [CONNECTED]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8]
org.apache.coyote.http2.Http2Parser.validateFrame Connection [17],
Stream [0], Frame type [WINDOW_UPDATE], Flags [0], Payload size [4]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8]
org.apache.coyote.http2.Http2Parser.readWindowUpdateFrame Connection
[17], Stream [0], Window size increment [15663105]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8]
org.apache.coyote.http2.AbstractStream.incrementWindowSize Connection
[17], Stream [0], increase flow control window by [15663105] to
[15728640]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Connection error
org.apache.coyote.http2.ConnectionException: Connection [17], Too much 
overhead so the connection will be closed
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:361)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:126)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:60)
at 
org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1113)
at 
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1659)
at 
org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1061)
at 
org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1480)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1323)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1295)
at 
org.apache.coyote.http2.Http2AsyncParser.readConnectionPreface(Http2AsyncParser.java:55)
at 
org.apache.coyote.http2.Http2UpgradeHandler.init(Http2UpgradeHandler.java:248)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.init(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:323)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60)
at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59)
at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889)
at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1747)

RE: AW: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Deshmukh, Kedar
I am getting same error even I turned off overhead protection.



~Kedar

-Original Message-
From: Mark Thomas  
Sent: Monday, February 21, 2022 6:59 PM
To: users@tomcat.apache.org
Subject: Re: AW: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

External email from: users-return-274605-dkedar=ptc@tomcat.apache.org


On 21/02/2022 13:20, Thomas Hoffmann (Speed4Trade GmbH) wrote:
> Hello,
> 
> you can adjust the threshold values for overhead limits:
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftomc
> at.apache.org%2Ftomcat-9.0-doc%2Fconfig%2Fhttp2.htmldata=04%7C01%
> 7Cdkedar%40ptc.com%7C82e35a1bf9414b3942cb08d9f53e2399%7Cb9921086ff774d
> 0d828acb3381f678e2%7C0%7C0%7C637810469500707164%7CUnknown%7CTWFpbGZsb3
> d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7
> C3000sdata=owuUyOcX4i4P3xm5xbnICgneZ5Bbswg2HxJDoMyfpn0%3Dres
> erved=0
> 
> I can't judge about why there are so many of such frames.

The debug log will show the overhead changing for each frame so there should be 
enough information in the logs to determine why the threshold is being reached.

Mark


> Maybe only a wireshark dump would help to figure it out.
> 
> Greetings,
> Thomas
> 
> -Ursprüngliche Nachricht-
> Von: Deshmukh, Kedar 
> Gesendet: Montag, 21. Februar 2022 13:38
> An: Tomcat Users List 
> Betreff: RE: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58
> 
> Hello,
> 
> This seems to be an error " Too much overhead so the connection will be 
> closed ", I am using Chrome browser (Version 97.0.4692.71) on Windows 10.  It 
> is consistently reproducible on chrome browser.
> 
> Here, I am trying to load home page of one of the application. It has some 
> html, javascripts, css and few images. Entire page loads only 450 KB of data. 
> And no issue with HTTP/1.1.
> 
> 21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
> org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17], 
> State [CONNECTED]
> 21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
> org.apache.coyote.http2.Http2Parser.validateFrame Connection [17], 
> Stream [0], Frame type [WINDOW_UPDATE], Flags [0], Payload size [4]
> 21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
> org.apache.coyote.http2.Http2Parser.readWindowUpdateFrame Connection 
> [17], Stream [0], Window size increment [15663105]
> 21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
> org.apache.coyote.http2.AbstractStream.incrementWindowSize Connection 
> [17], Stream [0], increase flow control window by [15663105] to 
> [15728640]
> 21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
> org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Connection error
>   org.apache.coyote.http2.ConnectionException: Connection [17], Too much 
> overhead so the connection will be closed
>   at 
> org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:361)
>   at 
> org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
>   at 
> org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:126)
>   at 
> org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:60)
>   at 
> org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1113)
>   at 
> org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1659)
>   at 
> org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1061)
>   at 
> org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1480)
>   at 
> org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1323)
>   at 
> org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1295)
>   at 
> org.apache.coyote.http2.Http2AsyncParser.readConnectionPreface(Http2AsyncParser.java:55)
>   at 
> org.apache.coyote.http2.Http2UpgradeHandler.init(Http2UpgradeHandler.java:248)
>   at 
> org.apache.coyote.http2.Http2AsyncUpgradeHandler.init(Http2AsyncUpgradeHandler.java:41)
>   at 
> org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:323)
>   at 
> org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
>   at 
> org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60)
>   at 
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59)
>   at 
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889)
>   at 
> 

Re: AW: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Mark Thomas




On 21/02/2022 13:20, Thomas Hoffmann (Speed4Trade GmbH) wrote:

Hello,

you can adjust the threshold values for overhead limits:
https://tomcat.apache.org/tomcat-9.0-doc/config/http2.html

I can't judge about why there are so many of such frames.


The debug log will show the overhead changing for each frame so there 
should be enough information in the logs to determine why the threshold 
is being reached.


Mark



Maybe only a wireshark dump would help to figure it out.

Greetings,
Thomas

-Ursprüngliche Nachricht-
Von: Deshmukh, Kedar 
Gesendet: Montag, 21. Februar 2022 13:38
An: Tomcat Users List 
Betreff: RE: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

Hello,

This seems to be an error " Too much overhead so the connection will be closed 
", I am using Chrome browser (Version 97.0.4692.71) on Windows 10.  It is 
consistently reproducible on chrome browser.

Here, I am trying to load home page of one of the application. It has some 
html, javascripts, css and few images. Entire page loads only 450 KB of data. 
And no issue with HTTP/1.1.

21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17], State 
[CONNECTED]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2Parser.validateFrame Connection [17], Stream [0], 
Frame type [WINDOW_UPDATE], Flags [0], Payload size [4]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2Parser.readWindowUpdateFrame Connection [17], 
Stream [0], Window size increment [15663105]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.AbstractStream.incrementWindowSize Connection [17], 
Stream [0], increase flow control window by [15663105] to [15728640]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Connection error
org.apache.coyote.http2.ConnectionException: Connection [17], Too much 
overhead so the connection will be closed
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:361)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:126)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:60)
at 
org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1113)
at 
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1659)
at 
org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1061)
at 
org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1480)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1323)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1295)
at 
org.apache.coyote.http2.Http2AsyncParser.readConnectionPreface(Http2AsyncParser.java:55)
at 
org.apache.coyote.http2.Http2UpgradeHandler.init(Http2UpgradeHandler.java:248)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.init(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:323)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60)
at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59)
at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889)
at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1747)
at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Exit, Connection 
[17], SocketState [CLOSED]
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.init Connection 

AW: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Thomas Hoffmann (Speed4Trade GmbH)
Hello,

you can adjust the threshold values for overhead limits:
https://tomcat.apache.org/tomcat-9.0-doc/config/http2.html

I can't judge about why there are so many of such frames.
Maybe only a wireshark dump would help to figure it out.

Greetings,
Thomas

-Ursprüngliche Nachricht-
Von: Deshmukh, Kedar  
Gesendet: Montag, 21. Februar 2022 13:38
An: Tomcat Users List 
Betreff: RE: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

Hello,

This seems to be an error " Too much overhead so the connection will be closed 
", I am using Chrome browser (Version 97.0.4692.71) on Windows 10.  It is 
consistently reproducible on chrome browser. 

Here, I am trying to load home page of one of the application. It has some 
html, javascripts, css and few images. Entire page loads only 450 KB of data. 
And no issue with HTTP/1.1.

21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17], State 
[CONNECTED]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2Parser.validateFrame Connection [17], Stream [0], 
Frame type [WINDOW_UPDATE], Flags [0], Payload size [4]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2Parser.readWindowUpdateFrame Connection [17], 
Stream [0], Window size increment [15663105]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.AbstractStream.incrementWindowSize Connection [17], 
Stream [0], increase flow control window by [15663105] to [15728640]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Connection error
org.apache.coyote.http2.ConnectionException: Connection [17], Too much 
overhead so the connection will be closed
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:361)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:126)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:60)
at 
org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1113)
at 
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1659)
at 
org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1061)
at 
org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1480)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1323)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1295)
at 
org.apache.coyote.http2.Http2AsyncParser.readConnectionPreface(Http2AsyncParser.java:55)
at 
org.apache.coyote.http2.Http2UpgradeHandler.init(Http2UpgradeHandler.java:248)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.init(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:323)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60)
at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59)
at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889)
at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1747)
at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Exit, Connection 
[17], SocketState [CLOSED]
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17], Connection 
preface received from client
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2AsyncParser$FrameCompletionHandler.failed 
Connection [17], Stream [0], Frame type [null], Error

RE: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Deshmukh, Kedar
Hello,

This seems to be an error " Too much overhead so the connection will be closed 
", I am using Chrome browser (Version 97.0.4692.71) on Windows 10.  It is 
consistently reproducible on chrome browser. 

Here, I am trying to load home page of one of the application. It has some 
html, javascripts, css and few images. Entire page loads only 450 KB of data. 
And no issue with HTTP/1.1.

21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17], State 
[CONNECTED]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2Parser.validateFrame Connection [17], Stream [0], 
Frame type [WINDOW_UPDATE], Flags [0], Payload size [4]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2Parser.readWindowUpdateFrame Connection [17], 
Stream [0], Window size increment [15663105]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.AbstractStream.incrementWindowSize Connection [17], 
Stream [0], increase flow control window by [15663105] to [15728640]
21-Feb-2022 17:36:38.548 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Connection error
org.apache.coyote.http2.ConnectionException: Connection [17], Too much 
overhead so the connection will be closed
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:361)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:126)
at 
org.apache.coyote.http2.Http2AsyncParser$PrefaceCompletionHandler.completed(Http2AsyncParser.java:60)
at 
org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1113)
at 
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1659)
at 
org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1061)
at 
org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1480)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1323)
at 
org.apache.tomcat.util.net.SocketWrapperBase.read(SocketWrapperBase.java:1295)
at 
org.apache.coyote.http2.Http2AsyncParser.readConnectionPreface(Http2AsyncParser.java:55)
at 
org.apache.coyote.http2.Http2UpgradeHandler.init(Http2UpgradeHandler.java:248)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.init(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch(Http2UpgradeHandler.java:323)
at 
org.apache.coyote.http2.Http2AsyncUpgradeHandler.upgradeDispatch(Http2AsyncUpgradeHandler.java:41)
at 
org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60)
at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59)
at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889)
at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1747)
at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at 
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.upgradeDispatch Exit, Connection 
[17], SocketState [CLOSED]
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2UpgradeHandler.init Connection [17], Connection 
preface received from client
21-Feb-2022 17:36:38.549 FINE [ilm-https-jsse-nio-9080-exec-8] 
org.apache.coyote.http2.Http2AsyncParser$FrameCompletionHandler.failed 
Connection [17], Stream [0], Frame type [null], Error
java.io.EOFException
at 
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1663)
at 
org.apache.tomcat.util.net.SocketWrapperBase$OperationState.start(SocketWrapperBase.java:1061)
at 
org.apache.tomcat.util.net.SocketWrapperBase.vectoredOperation(SocketWrapperBase.java:1480)
at 

Re: ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Mark Thomas

On 21/02/2022 08:17, Deshmukh, Kedar wrote:

Hello,

We are consistently seeing error "ERR_HTTP2_PROTOCOL_ERROR" in browser console 
when we try to open any web page deployed on Tomcat 9.0.58 server in test environment. 
This issue is observed only when HTTP/2 is enabled. Otherwise, we do not see any issue 
with HTTP/1.1.
Basically, we are assessing the possibility to switch to HTTP/2, however this 
issue is somehow blocking us.

Enabled HTTP/2 with --> 

Is there any particular issue with HTTP/2 ?


No.


Any additional configuration required at tomcat side to overcome it?


No.

Enable debug logging for HTTP/2 (see logging.properties), run the 
simplest test that exhibits the problem and review the logs.


If the issue isn't clear from reviewing the logs, put the log file 
somewhere we can download it and someone will take a look.


Mark

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



ERR_HTTP2_PROTOCOL_ERROR with Tomcat 9.0.58

2022-02-21 Thread Deshmukh, Kedar
Hello,

We are consistently seeing error "ERR_HTTP2_PROTOCOL_ERROR" in browser console 
when we try to open any web page deployed on Tomcat 9.0.58 server in test 
environment. This issue is observed only when HTTP/2 is enabled. Otherwise, we 
do not see any issue with HTTP/1.1.
Basically, we are assessing the possibility to switch to HTTP/2, however this 
issue is somehow blocking us.

Enabled HTTP/2 with --> 

Is there any particular issue with HTTP/2 ? Any additional configuration 
required at tomcat side to overcome it?

Thanks,
Kedar


Re: is too quick to respond

2022-02-21 Thread Mark Thomas

John,

I'm going back a few emails in this thread but that is because things 
appear to be heading in the wrong direction. This is an attempt to get 
you back on the right track.


On 18/02/2022 15:50, John Barrow wrote:




I use Netbeans 12.6 (Apache loyalty!) on Windows 10 for all my Java
development using JDK 17.


Ack. I use Eclipse so I can't provide NetBeans specific help but I 
should be able to point you in the right direction.



Unfortunately, I am only ‘sort-of’ familiar with Maven and have never
touched Ant so I am flying a bit blind here, but that shouldn’t matter
if it all works as I don't need to touch the build process.

I downloaded the ‘main’ branch from GitHub
(https://github.com/apache/tomcat) and unzipped it into its own
folder, again with Ant (apache-ant-1.9.16).


If you eventual aim is to provide a pull request to address this issue 
then I'd recommend:

- Fork the Tomcat project in GitHub
- Checkout your clone


I have managed to get Ant to build it using instructions in
BUILDING.txt. While it says that Tomcat built successfully, scrolling
up, I got lots of warnings saying ‘can’t find a module etc so not sure
if doing something wrong. I can send the results as an attachment if
that would be useful.


Hmm. You shouldn't see any warnings about modules. A handful of warnings 
about deprecation are expected. If you still see these warnings then 
yes, please provide a copy so we can take a look.


The simplest way to test the build is to try the following:
cd output\build\bin
catalina.bat run

That should start a Tomcat instance in the console. Check 
http://localhost:8080 returns a web page in your browser and then stop 
Tomcat with CTRL-C



I can also get it to build in Netbeans (I first had to set  Project >
Properties > Java Sources to Source Level 17 which may be a bit of a
guess as Netbeans complained about default value of 1.7). The java
files in Netbeans don’t highlight any exceptions, just warnings.


Tomcat 10.1.x (the current main branch) requires Java 11 as a minimum. 
You should be fine setting the source level to anything 11 or above. 
Personally, I'd set it to 11 as that way you avoid the (very low) risk 
of proposing a fix that doesn't work on Java 11.



I appear to have issues with the other two folders
‘C:\Community\Tomcat\tomcat-main\webapps\docs\appdev\sample\src\mypackage’


Tell NetBeans to ignore that folder. It should not be part of the source 
you are trying to compile. It is part of a (rather old) tutorial on 
building a web application.



and ‘C:\Community\Tomcat\tomcat-main\test’ as they don’t seem to be
able to locate the dependencies (HelloWorld is -e.g. import
jakarta.servlet.http.HttpServlet & tests is -e.g. import
org.junit.Assert). In Maven, I would add a dependency to the pom.xml
file, but not sure what to do in Ant as I would expect the
configuration to already be set up.


The problem there is that the JUnit reference in the NetBeans 
configuration wasn't updated when the JUnit version was updated.


I've just fixed that.

This is where using a clone would speed things up as you'd be able to 
fetch the update from Git.


Once you have the updated sources see 
res/ide-support/netbeans/README.txt about running:


ant ide-netbeans-replace


I also ran the ‘ant test’, took about 90 minutes and failed a number
of tests (which I thought was surprising as I would expect sources in
the repository to pass all the tests. I can provide examples if useful
as it may indicate that I have done something wrong.


I wouldn't worry too much about these right now. There are various tests 
that are sensitive to timing, network configuration and/or OS configuration.


What I would recommend is that if you change code, you run the tests 
associated with the class/classes you have changed. That should catch 
most issues.


We can work on getting the full test suite passing but I'd suggest that 
that is not the priority.



I read through the ‘RUNNING.txt’ file, but that assumes a binary to
start, rather than following on from BUILDING Tomcat and so I couldn’t
relate that to what I was trying to achieve.


After a successful build, the "output/build" directory will contain a 
ready to run Tomcat instance. It is both CATALINA_HOME and CATALINA_BASE 
so RUNNING.txt should make sense if you start in that directory.



However, if I launch Tomcat from within Netbeans (F6), I get a dialog
which I don’t understand - probably due to my lack of familiarity with
Ant. Again, I can include a screenshot if that would help.


Looking at res/ide-support/netbeans/README.txt, I don't believe that 
mode of operation is supported. You should be able to run Tomcat from 
the command line with debugging enabled:


catalina.bat jpda run

and then remote debug in NetBeans.


I need to be able to run the locally built version of Tomcat so that,
as a starting point, I can add some System.out.print() messages around
the relevant routines (which I have located – thanks Mark). Of course
I am