Flaky test: JvmServerTest > concurrent encoding -- multiple evaluators with module reads()
- Dominant language
- Java
- Stars
- 11.5k
- Forks
- 402
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 20
Description
This recently added test regularly fails with:
```
JvmServerTest > concurrent encoding -- multiple evaluators with module reads() FAILED
java.lang.AssertionError: 2 encoding errors (decoded 3894/4000): Write end dead
at org.pkl.server.AbstractServerTest.concurrent encoding -- multiple evaluators with module reads(AbstractServerTest.kt:930)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by:
java.io.IOException: Write end dead
at java.base/java.io.PipedInputStream.read(PipedInputStream.java:316)
at java.base/java.io.PipedInputStream.read(PipedInputStream.java:380)
at java.base/java.io.InputStream.read(InputStream.java:220)
at org.msgpack.core.buffer.InputStreamBufferInput.next(InputStreamBufferInput.java:75)
at org.msgpack.core.MessageUnpacker.ensureBuffer(MessageUnpacker.java:361)
at org.msgpack.core.MessageUnpacker.hasNext(MessageUnpacker.java:354)
at org.pkl.core.messaging.AbstractMessagePackDecoder.decode(AbstractMessagePackDecoder.java:52)
at org.pkl.server.AbstractServerTest.concurrent_encoding____multiple_evaluators_with_module_reads$lambda$2(AbstractServerTest.kt:904)
at java.base/java.lang.Thread.run(Thread.java:1583)
```
Contributor guide
Research direction
Start with the concurrent encoding test in AbstractServerTest.kt, especially the decoder around line 904 and the assertion at line 930. Reproduce JvmServerTest > concurrent encoding -- multiple evaluators with module reads() and trace the Write end dead failures. Done means the test reliably decodes all 4000 messages without encoding errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, kotlin
- Domain
- testing-qa
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100