-
Bug
-
Resolution: Fixed
-
P4
-
None
-
b03
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8299267 | 17.0.7-oracle | Ramesh Gangadhar | P4 | Resolved | Fixed | b01 |
JDK-8302334 | 17.0.7 | Goetz Lindenmaier | P4 | Resolved | Fixed | b02 |
This is due to the ProxyServer abruptly closing the connection. The exception seems to be caused by a debug statement trying to printf a string has a number (%d and passing a string argument)
Testing HTTP_2, http, /foo/http2
Proxy is: [HTTP @ /127.0.0.1:51144]
Posting to HTTP_1_1 server at: http://localhost:51028/foo/http2 POST
Proxy: accepted new connection: Proxy connection 3, client sock:java.nio.channels.SocketChannel[connected local=/127.0.0.1:51144 remote=/127.0.0.1:51218]
POST http://localhost:51028/foo/http2 HTTP/1.1
Content-Length: 316
Host: localhost:51028
User-Agent: Java-http-client/21-internal
Proxy: unauthorized; 407 sent (112/112), linger: 2, nodelay: true
Proxy: content-length: Proxy: bad content-length, closing connection
Proxy: content-length: 316
Proxy: java.util.IllegalFormatConversionException: d != java.lang.String
Proxy: closing connection id=3, linger: 2, nodelay: true
Checking response: (POST http://localhost:51028/foo/http2) 407
Posting with Proxy-Authorization to HTTP_1_1 server at: http://localhost:51028/foo/http2 POST
Proxy: drained: 316
Unexpected exception: exiting: java.io.IOException: HTTP/1.1 header parser received no bytes
java.io.IOException: HTTP/1.1 header parser received no bytes
at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:909)
at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:133)
at HttpsTunnelAuthTest.test(HttpsTunnelAuthTest.java:280)
at HttpsTunnelAuthTest.main(HttpsTunnelAuthTest.java:194)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
at java.base/java.lang.Thread.run(Thread.java:1623)
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes
at java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:348)
at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:574)
at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)
at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:205)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
... 1 more
Caused by: java.io.IOException: connection closed locally
at java.net.http/jdk.internal.net.http.SocketTube.signalClosed(SocketTube.java:159)
at java.net.http/jdk.internal.net.http.PlainHttpConnection.close(PlainHttpConnection.java:405)
at java.net.http/jdk.internal.net.http.ConnectionPool.cleanup(ConnectionPool.java:501)
at java.net.http/jdk.internal.net.http.ConnectionPool$CleanupTrigger.triggerCleanup(ConnectionPool.java:524)
at java.net.http/jdk.internal.net.http.ConnectionPool$CleanupTrigger.onComplete(ConnectionPool.java:537)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadSubscription.signalCompletion(SocketTube.java:648)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:853)
at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:181)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:303)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:256)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:782)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:965)
at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:253)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:1390)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:1335)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:1335)
Http1TestServer: stop
Http1TestServer: stop
Http2TestServerImpl: stop
Testing HTTP_2, http, /foo/http2
Proxy is: [HTTP @ /127.0.0.1:51144]
Posting to HTTP_1_1 server at: http://localhost:51028/foo/http2 POST
Proxy: accepted new connection: Proxy connection 3, client sock:java.nio.channels.SocketChannel[connected local=/127.0.0.1:51144 remote=/127.0.0.1:51218]
POST http://localhost:51028/foo/http2 HTTP/1.1
Content-Length: 316
Host: localhost:51028
User-Agent: Java-http-client/21-internal
Proxy: unauthorized; 407 sent (112/112), linger: 2, nodelay: true
Proxy: content-length: Proxy: bad content-length, closing connection
Proxy: content-length: 316
Proxy: java.util.IllegalFormatConversionException: d != java.lang.String
Proxy: closing connection id=3, linger: 2, nodelay: true
Checking response: (POST http://localhost:51028/foo/http2) 407
Posting with Proxy-Authorization to HTTP_1_1 server at: http://localhost:51028/foo/http2 POST
Proxy: drained: 316
Unexpected exception: exiting: java.io.IOException: HTTP/1.1 header parser received no bytes
java.io.IOException: HTTP/1.1 header parser received no bytes
at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:909)
at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:133)
at HttpsTunnelAuthTest.test(HttpsTunnelAuthTest.java:280)
at HttpsTunnelAuthTest.main(HttpsTunnelAuthTest.java:194)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
at java.base/java.lang.Thread.run(Thread.java:1623)
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes
at java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:348)
at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:574)
at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)
at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:205)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
... 1 more
Caused by: java.io.IOException: connection closed locally
at java.net.http/jdk.internal.net.http.SocketTube.signalClosed(SocketTube.java:159)
at java.net.http/jdk.internal.net.http.PlainHttpConnection.close(PlainHttpConnection.java:405)
at java.net.http/jdk.internal.net.http.ConnectionPool.cleanup(ConnectionPool.java:501)
at java.net.http/jdk.internal.net.http.ConnectionPool$CleanupTrigger.triggerCleanup(ConnectionPool.java:524)
at java.net.http/jdk.internal.net.http.ConnectionPool$CleanupTrigger.onComplete(ConnectionPool.java:537)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadSubscription.signalCompletion(SocketTube.java:648)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:853)
at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:181)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:303)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:256)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:782)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:965)
at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:253)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:1390)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:1335)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:1335)
Http1TestServer: stop
Http1TestServer: stop
Http2TestServerImpl: stop
- backported by
-
JDK-8299267 java/net/httpclient/HttpsTunnelAuthTest.java fails with java.io.IOException: HTTP/1.1 header parser received no bytes
-
- Resolved
-
-
JDK-8302334 java/net/httpclient/HttpsTunnelAuthTest.java fails with java.io.IOException: HTTP/1.1 header parser received no bytes
-
- Resolved
-
- links to
-
Commit openjdk/jdk17u-dev/a800231f
-
Commit openjdk/jdk/e5edb10d
-
Review openjdk/jdk17u-dev/1162
-
Review openjdk/jdk/11717
(1 links to)