Hi, I am using akka-http/10.0.9 and on production I see following exceptions (not very often, probably every 500k requests):
Error in stage [HttpRequestParser]: 762
java.lang.ArrayIndexOutOfBoundsException: 762
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderValue(HttpHeaderParser.scala:194)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderLine(HttpHeaderParser.scala:130)
at akka.http.impl.engine.parsing.HttpMessageParser$class.parseHeaderLines(HttpMessageParser.scala:125)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseHeaderLines(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseMessage(HttpRequestParser.scala:77)
at akka.http.impl.engine.parsing.HttpMessageParser$class.startNewMessage(HttpMessageParser.scala:100)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.startNewMessage(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$startNewMessage$1.apply(HttpMessageParser.scala:101)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$startNewMessage$1.apply(HttpMessageParser.scala:101)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$continue$2.apply(HttpMessageParser.scala:264)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$continue$2.apply(HttpMessageParser.scala:264)
at akka.http.impl.engine.parsing.HttpMessageParser$class.run$1(HttpMessageParser.scala:64)
at akka.http.impl.engine.parsing.HttpMessageParser$class.parseBytes(HttpMessageParser.scala:78)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseBytes(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpMessageParser$class.parseSessionBytes(HttpMessageParser.scala:60)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseSessionBytes(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.onPush(HttpRequestParser.scala:55)
at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:747)
at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:649)
at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:471)
at akka.stream.impl.fusing.GraphInterpreterShell.receive(ActorGraphInterpreter.scala:423)
at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:603)
at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:618)
at akka.actor.Actor$class.aroundReceive(Actor.scala:502)
at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:529)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
at akka.actor.ActorCell.invoke_aroundBody0(ActorCell.scala:495)
at akka.actor.ActorCell$AjcClosure1.run(ActorCell.scala:1)
at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
at akka.kamon.instrumentation.ActorMonitors$$anon$1$$anonfun$processMessage$1.apply(ActorMonitor.scala:63)
at kamon.trace.Tracer$.withContext(TracerModule.scala:58)
at akka.kamon.instrumentation.ActorMonitors$$anon$1.processMessage(ActorMonitor.scala:62)
at akka.kamon.instrumentation.ActorCellInstrumentation.aroundBehaviourInvoke(ActorInstrumentation.scala:45)
at akka.actor.ActorCell.invoke(ActorCell.scala:488)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
at akka.dispatch.Mailbox.run(Mailbox.scala:224)
at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
and sometimes:
Error in stage [HttpRequestParser]: null
java.nio.BufferOverflowException: null
at java.nio.Buffer.nextPutIndex(Buffer.java:521)
at java.nio.HeapByteBuffer.put(HeapByteBuffer.java:169)
at akka.http.impl.engine.parsing.HttpHeaderParser$.akka$http$impl$engine$parsing$HttpHeaderParser$$scanHeaderValue(HttpHeaderParser.scala:557)
at akka.http.impl.engine.parsing.HttpHeaderParser$ModeledHeaderValueParser.apply(HttpHeaderParser.scala:499)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseAndInsertHeader$1(HttpHeaderParser.scala:173)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderValue(HttpHeaderParser.scala:187)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderLine(HttpHeaderParser.scala:130)
at akka.http.impl.engine.parsing.HttpMessageParser$class.parseHeaderLines(HttpMessageParser.scala:125)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseHeaderLines(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpMessageParser$class.akka$http$impl$engine$parsing$HttpMessageParser$$parseHeaderLinesAux(HttpMessageParser.scala:170)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$parseHeaderLines$1.apply(HttpMessageParser.scala:131)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$parseHeaderLines$1.apply(HttpMessageParser.scala:131)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$continue$1.apply(HttpMessageParser.scala:263)
at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$continue$1.apply(HttpMessageParser.scala:263)
at akka.http.impl.engine.parsing.HttpMessageParser$class.run$1(HttpMessageParser.scala:64)
at akka.http.impl.engine.parsing.HttpMessageParser$class.parseBytes(HttpMessageParser.scala:78)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseBytes(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpMessageParser$class.parseSessionBytes(HttpMessageParser.scala:60)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseSessionBytes(HttpRequestParser.scala:44)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.onPush(HttpRequestParser.scala:55)
at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:747)
at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:649)
at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:471)
at akka.stream.impl.fusing.GraphInterpreterShell.receive(ActorGraphInterpreter.scala:423)
at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:603)
at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:618)
at akka.actor.Actor$class.aroundReceive(Actor.scala:502)
at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:529)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
at akka.actor.ActorCell.invoke_aroundBody0(ActorCell.scala:495)
at akka.actor.ActorCell$AjcClosure1.run(ActorCell.scala:1)
at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
at akka.kamon.instrumentation.ActorMonitors$$anon$1$$anonfun$processMessage$1.apply(ActorMonitor.scala:63)
at kamon.trace.Tracer$.withContext(TracerModule.scala:58)
at akka.kamon.instrumentation.ActorMonitors$$anon$1.processMessage(ActorMonitor.scala:62)
at akka.kamon.instrumentation.ActorCellInstrumentation.aroundBehaviourInvoke(ActorInstrumentation.scala:45)
at akka.actor.ActorCell.invoke(ActorCell.scala:488)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
at akka.dispatch.Mailbox.run(Mailbox.scala:224)
at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
and then lot of these:
Error in stage [HttpRequestParser]: null
java.lang.ArrayIndexOutOfBoundsException: null
(no stack trace)
I was not able to find the offending request (I have tcpdump but nothing special out there, nginx which run in front does not report errors neither).
BTW, I have seen https://github.com/akka/akka/issues/18397 and I will try to disable cache and see if it helps.
Thanks for the report, @hamsterready. It would indeed be good to have more information about what kind of requests were running but I understand they may be hard to find. In any case, it's pretty likely that this is a bug.
I set akka.http.parsing.header-cache.default = 0 and no such errors since redeploy, but I need to wait for larger traffic (when EST timezone wakes up). Will let you know.
Unfortunately it happened again, shall I set these to 0 as well:
User-Agent = 32
?
For the record, after I set akka.http.parsing.header-cache.default = 0 I have not seen first exception any more. The second one is still present (very rare, in fact only once).
BTW, no more ArrayIndexOutOfBoundsException only BufferOverflowException.
I am also getting the same errors, but I would not like to disable header caching as we need high throughput. Is there any way of suppressing this without disabling caching? Is there a fix planned? @jrudolph
Any updates here?
@halilakgun I looked into it a bit but haven't been able to reproduce it yet, would be very interested!
In #2001 the same index 762 was reported, interesting...
Hi,
We get the same errors:
Error in stage [HttpRequestParser]: 762
java.lang.ArrayIndexOutOfBoundsException: 762
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderValue(HttpHeaderParser.scala:194)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderLine(HttpHeaderParser.scala:130)
...
And
Error in stage [HttpRequestParser]: null
java.lang.ArrayIndexOutOfBoundsException
We get them in 2 distinct services with completely different requests (graphQL POST in one case, REST GET in the other service)
@stephane-debart is that reproducible for you? Could you post the headers in question?
Error in stage [HttpRequestParser]: 762 java.lang.ArrayIndexOutOfBoundsException: 762
Seems like an invariant that is stated in the scaladoc is violated:
The array has a fixed size of 254 rows (since we can address at most 256 - 1 values with the node MSB and we always have fewer branching nodes than values).
Needs more digging.
Error in stage [HttpRequestParser]: null
If it's the same exception as above at HeapByteBuffer.put then that's about weird Unicode content in a header triggering a bug.
@jrudolph No unfortunately, we don't have a repro. It happens a few times every days on our production servers. And we don't know what are the corresponding headers.
Is there an easy way to get or log these headers before having this error ? As the stack trace doesn't contain any reference to our own code but just tells that we are inside an actor, I even don't really know what is the top level function involved...
Is there an easy way to get or log these headers before having this error ?
No not yet, if we cannot figure out the issue otherwise, we'll add extra logging.
As the stack trace doesn't contain any reference to our own code but just tells that we are inside an actor, I even don't really know what is the top level function involved...
Yep, that's expected. It's in the code path for parsing an HTTP message from a client which happens asynchronously.
Error in stage [HttpRequestParser]: null
If it's the same exception as above at
HeapByteBuffer.putthen that's about weird Unicode content in a header triggering a bug.
I think it can happen if data is coming in slices that cut a multi-byte UTF-8 sequence in the middle. Then byteAt will fail with a NotEnoughDataException but the ByteBuffer isn't reset.
@jrudolph I've been able to find in our front reverse proxy log the headers of one of the request which failed.
Unfortunately, headers added by intermediate proxies are not in this log. And at least one of these intermediate proxies may add unicode characters in headers (it's adding user name).
So would it help if I send this incomplete list of headers to you ?
The java.nio.BufferOverflowException: null problem has been fixed in #2306.
So would it help if I send this incomplete list of headers to you ?
I guess it would have more helped with the Unicode issue which I already fixed in #2306. For the other issue, the problem might probably accrue over multiple requests made over the same connection, so we would probably need the full and exact set of headers for all requests or responses on one connection.
I guess it's reproducible by feeding the HeaderParser a big enough set of different enough headers so that the branching nodes are overflowing the fixed-size data structures.
I have the same problem. Is there any news?
I have the same problem. Is there any news?
@k-bespalov, can you give more details? Which version do you use, which error message do you see?
@jrudolph I sometimes see both error messages. version 10.1.8. I suppose that it may be caused by a lot of headers in requests because now server receive fewer headers and there is no error. but i can't be sure in that
@k-bespalov, thanks for the clarification. Some things have changed in the meantime so it would good if you could post the new stack traces because the line numbers will probably have changed.
@jrudolph no problem
message: Error in stage [HttpRequestParser]: 762
exception.stacktrace: java.lang.ArrayIndexOutOfBoundsException: 762
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderValue(HttpHeaderParser.scala:195)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderLine(HttpHeaderParser.scala:131)
at akka.http.impl.engine.parsing.HttpMessageParser.parseHeaderLines(HttpMessageParser.scala:135)
at akka.http.impl.engine.parsing.HttpMessageParser.parseHeaderLines$(HttpMessageParser.scala:126)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseHeaderLines(HttpRequestParser.scala:43)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseMessage(HttpRequestParser.scala:77)
at akka.http.impl.engine.parsing.HttpMessageParser.startNewMessage(HttpMessageParser.scala:110)
at akka.http.impl.engine.parsing.HttpMessageParser.startNewMessage$(HttpMessageParser.scala:108)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.startNewMessage(HttpRequestParser.scala:43)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.$anonfun$parseMessage$1(HttpRequestParser.scala:85)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.$anonfun$parseMessage$1$adapted(HttpRequestParser.scala:85)
at akka.http.impl.engine.parsing.HttpMessageParser.$anonfun$continue$3(HttpMessageParser.scala:290)
at akka.http.impl.engine.parsing.HttpMessageParser.run$1(HttpMessageParser.scala:68)
at akka.http.impl.engine.parsing.HttpMessageParser.parseBytes(HttpMessageParser.scala:82)
at akka.http.impl.engine.parsing.HttpMessageParser.parseBytes$(HttpMessageParser.scala:66)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseBytes(HttpRequestParser.scala:43)
at akka.http.impl.engine.parsing.HttpMessageParser.parseSessionBytes(HttpMessageParser.scala:64)
at akka.http.impl.engine.parsing.HttpMessageParser.parseSessionBytes$(HttpMessageParser.scala:59)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.parseSessionBytes(HttpRequestParser.scala:43)
at akka.http.impl.engine.parsing.HttpRequestParser$$anon$1.onPush(HttpRequestParser.scala:54)
at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:515)
at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:407)
at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:588)
at akka.stream.impl.fusing.GraphInterpreterShell$AsyncInput.execute(ActorGraphInterpreter.scala:474)
at akka.stream.impl.fusing.GraphInterpreterShell.processEvent(ActorGraphInterpreter.scala:563)
at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:730)
at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:745)
at akka.actor.Actor.aroundReceive(Actor.scala:517)
at akka.actor.Actor.aroundReceive$(Actor.scala:515)
at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:655)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:592)
at akka.actor.ActorCell.invoke(ActorCell.scala:561)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:258)
at akka.dispatch.Mailbox.run(Mailbox.scala:225)
at akka.dispatch.Mailbox.exec(Mailbox.scala:235)
at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
message: Error in stage [HttpRequestParser]: null
exception.stacktrace: java.lang.ArrayIndexOutOfBoundsException: null
If that's not too much of a hassle could you rerun with -XX:-OmitStackTraceInFastThrow so we might get a stack trace for the NPE as well?
I've turn on this option. as I said, now there is no errors. if I catch it again I let you know
I have seen the same error with the : 762 in my logs, it happend only once in months.
Concerned visited url has an accent %C3%A9 (茅) in the url, but probably not related.
Using Play 2.6.19
Here is another ArrayIndexOutOfBoundsException:
path("upload") {
post {
fileUploadAll("test") { uploads =>
complete(StatusCodes.OK)
}
}
}
% echo $LANG
ru_RU.UTF-8
% touch 袗
% touch 袘
% curl 'http://127.0.0.1:8080/upload' -F "test=@袗" -F "test=@袘" --trace-ascii -
== Info: Trying 127.0.0.1:8080...
== Info: TCP_NODELAY set
== Info: Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
=> Send header, 192 bytes (0xc0)
0000: POST /upload HTTP/1.1
0017: Host: 127.0.0.1:8080
002d: User-Agent: curl/7.67.0
0046: Accept: */*
0053: Content-Length: 342
0068: Content-Type: multipart/form-data; boundary=--------------------
00a8: ----8db5165dfc64f3df
00be:
=> Send data, 342 bytes (0x156)
0000: --------------------------8db5165dfc64f3df
002c: Content-Disposition: form-data; name="test"; filename=".."
0068: Content-Type: application/octet-stream
0090:
0092:
0094: --------------------------8db5165dfc64f3df
00c0: Content-Disposition: form-data; name="test"; filename=".."
00fc: Content-Type: application/octet-stream
0124:
0126:
0128: --------------------------8db5165dfc64f3df--
== Info: We are completely uploaded and fine
== Info: Mark bundle as not supporting multiuse
<= Recv header, 26 bytes (0x1a)
0000: HTTP/1.1 400 Bad Request
<= Recv header, 27 bytes (0x1b)
0000: Server: akka-http/10.1.11
<= Recv header, 37 bytes (0x25)
0000: Date: Tue, 11 Feb 2020 22:50:51 GMT
<= Recv header, 41 bytes (0x29)
0000: Content-Type: text/plain; charset=UTF-8
<= Recv header, 20 bytes (0x14)
0000: Content-Length: 73
<= Recv header, 2 bytes (0x2)
0000:
<= Recv data, 73 bytes (0x49)
0000: The request content was malformed:.Index 764 out of bounds for l
0040: ength 762
The request content was malformed:
Index 764 out of bounds for length 762== Info: Connection #0 to host 127.0.0.1 left intact
[2020-02-12 01:50:51,912] [ERROR] [akka.actor.RepointableActorRef] [HelloAkkaHttpServer-akka.actor.default-dispatcher-23] [akka://HelloAkkaHttpServer/system/Materializers/StreamSupervisor-0/flow-20-0-headSink] - Error in stage [akka.http.impl.engine.parsing.BodyPartParser@381a7557]: Index 764 out of bounds for length 762
java.lang.ArrayIndexOutOfBoundsException: Index 764 out of bounds for length 762
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderValue(HttpHeaderParser.scala:195)
at akka.http.impl.engine.parsing.HttpHeaderParser.parseHeaderLine(HttpHeaderParser.scala:131)
at akka.http.impl.engine.parsing.BodyPartParser$$anon$1.parseHeaderLines(BodyPartParser.scala:155)
at akka.http.impl.engine.parsing.BodyPartParser$$anon$1.$anonfun$parseEntity$1(BodyPartParser.scala:215)
at akka.http.impl.engine.parsing.BodyPartParser$$anon$1.loop$1(BodyPartParser.scala:98)
at akka.http.impl.engine.parsing.BodyPartParser$$anon$1.run(BodyPartParser.scala:103)
at akka.http.impl.engine.parsing.BodyPartParser$$anon$1.onPush(BodyPartParser.scala:66)
at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:541)
at akka.stream.impl.fusing.GraphInterpreter.processEvent(GraphInterpreter.scala:527)
at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:390)
at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:624)
at akka.stream.impl.fusing.GraphInterpreterShell.init(ActorGraphInterpreter.scala:594)
at akka.stream.impl.fusing.ActorGraphInterpreter.tryInit(ActorGraphInterpreter.scala:701)
at akka.stream.impl.fusing.ActorGraphInterpreter.preStart(ActorGraphInterpreter.scala:750)
at akka.actor.Actor.aroundPreStart(Actor.scala:545)
at akka.actor.Actor.aroundPreStart$(Actor.scala:545)
at akka.stream.impl.fusing.ActorGraphInterpreter.aroundPreStart(ActorGraphInterpreter.scala:690)
at akka.actor.ActorCell.create(ActorCell.scala:637)
at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:509)
at akka.actor.ActorCell.systemInvoke(ActorCell.scala:531)
at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:294)
at akka.dispatch.Mailbox.run(Mailbox.scala:229)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
@shkhln, great thanks a lot, that reproduces it deterministically, indeed!
Most helpful comment
I am also getting the same errors, but I would not like to disable header caching as we need high throughput. Is there any way of suppressing this without disabling caching? Is there a fix planned? @jrudolph