Artur created SUREFIRE-2127:
-------------------------------
Summary: Resource temporarily unavailable when running tests that
invoke Node using Surefire 3
Key: SUREFIRE-2127
URL: https://issues.apache.org/jira/browse/SUREFIRE-2127
Project: Maven Surefire
Issue Type: Bug
Components: Maven Surefire Plugin
Affects Versions: 3.0.0-M7
Reporter: Artur
When running the Vaadin Flow test set using surefire 3.0.0-M7 we always end up
with
{code:java}
[SUREFIRE] std/in stream corrupted
java.io.IOException: Resource temporarily unavailable
at java.base/java.io.FileInputStream.readBytes(Native Method)
at java.base/java.io.FileInputStream.read(FileInputStream.java:276)
at
java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:282)
at
java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at
java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at
java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at
java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at
org.apache.maven.surefire.api.util.internal.Channels$3.readImpl(Channels.java:217)
at
org.apache.maven.surefire.api.util.internal.AbstractNoninterruptibleReadableChannel.read(AbstractNoninterruptibleReadableChannel.java:54)
at
org.apache.maven.surefire.api.stream.AbstractStreamDecoder.read(AbstractStreamDecoder.java:484)
at
org.apache.maven.surefire.api.stream.AbstractStreamDecoder.read(AbstractStreamDecoder.java:470)
at
org.apache.maven.surefire.api.stream.AbstractStreamDecoder.readMessageType(AbstractStreamDecoder.java:118)
at
org.apache.maven.surefire.booter.stream.CommandDecoder.decode(CommandDecoder.java:87)
at
org.apache.maven.surefire.booter.spi.CommandChannelDecoder.decode(CommandChannelDecoder.java:67)
at
org.apache.maven.surefire.booter.CommandReader$CommandRunnable.run(CommandReader.java:345)
at java.base/java.lang.Thread.run(Thread.java:833)
{code}
This problem is introduced in
[SUREFIRE-1658|https://issues.apache.org/jira/projects/SUREFIRE/issues/SUREFIRE-1658],
verified using git bisect
It seems to occur in tests that invoke `pnpm` through `node` so potentially
this is related to [https://github.com/nodejs/node/issues/42826] as the error
message "Resource temporarily unavailable" seems to refer to EAGAIN
[https://stackoverflow.com/a/4058377/3336733] or in other words that the file
descriptor is in non-blocking mode and there is no data available to read.
The Vaadin Flow PR where this has been tested is
[https://github.com/vaadin/flow/pull/15102]
Can be reproduced by checking out that branch (`upgrade-test-runners`) and
running `mvn test`. It will fail on the `flow-server` module from where all
tests except one have been removed.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)