On Tue, Aug 2, 2022 at 8:05 AM Markku Korkeala <markku.korkeala(a)iki.fi> wrote:
thanks all for the replies, I was running for the same issues with
3.2.0 version as well,
good to see that return code 126 is fixable. Like I wrote in the opening message, I was
able to add some debug messages and see that in the first case of Integer.MIN_VALUE
return
code, the exception returned from the process was:
org.apache.maven.shared.utils.cli.CommandLineException: Failure processing stdout.
(the test sends InvocationRequest and receives InvocationResponse, the response has
the Exception and return code).
But haven't got any deeper than that, what is the actual cause for the error.
I added some logging in DefaultInvoker.java (in method execute) to
print the exception when a CommandLineException is caught. The two
failing tests are similar:
Exception: Failure processing stdout.
org.apache.maven.shared.utils.cli.CommandLineException: Failure
processing stdout.
at
org.apache.maven.shared.utils.cli.CommandLineUtils$2.call(CommandLineUtils.java:357)
at
org.apache.maven.shared.utils.cli.CommandLineUtils.executeCommandLine(CommandLineUtils.java:185)
at
org.apache.maven.shared.utils.cli.CommandLineUtils.executeCommandLine(CommandLineUtils.java:160)
at
org.apache.maven.shared.utils.cli.CommandLineUtils.executeCommandLine(CommandLineUtils.java:141)
at
org.apache.maven.shared.utils.cli.CommandLineUtils.executeCommandLine(CommandLineUtils.java:110)
at
org.apache.maven.shared.invoker.DefaultInvoker.executeCommandLine(DefaultInvoker.java:186)
at org.apache.maven.shared.invoker.DefaultInvoker.execute(DefaultInvoker.java:116)
at
org.apache.maven.shared.invoker.DefaultInvokerTest.testBuildShouldSucceed(DefaultInvokerTest.java:54)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at
org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:377)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:284)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:248)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:167)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:456)
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:169)
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:595)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:581)
Caused by: java.nio.BufferOverflowException
at java.base/java.nio.Buffer.nextPutIndex(Buffer.java:722)
at java.base/java.nio.HeapByteBuffer.put(HeapByteBuffer.java:209)
at
org.apache.maven.surefire.api.stream.AbstractStreamEncoder.encodeString(AbstractStreamEncoder.java:127)
at
org.apache.maven.surefire.api.stream.AbstractStreamEncoder.encodeStringData(AbstractStreamEncoder.java:171)
at
org.apache.maven.surefire.api.stream.AbstractStreamEncoder.encode(AbstractStreamEncoder.java:157)
at
org.apache.maven.surefire.booter.spi.EventChannelEncoder.encodeMessage(EventChannelEncoder.java:398)
at
org.apache.maven.surefire.booter.spi.EventChannelEncoder.setOutErr(EventChannelEncoder.java:188)
at
org.apache.maven.surefire.booter.spi.EventChannelEncoder.testOutput(EventChannelEncoder.java:183)
at
org.apache.maven.surefire.api.booter.ForkingRunListener.writeTestOutput(ForkingRunListener.java:113)
at
org.apache.maven.surefire.api.booter.ForkingRunListener.writeTestOutput(ForkingRunListener.java:44)
at
org.apache.maven.surefire.common.junit4.JUnit4RunListener.writeTestOutput(JUnit4RunListener.java:235)
at
org.apache.maven.surefire.api.report.ConsoleOutputCapture$ForwardingPrintStream.println(ConsoleOutputCapture.java:138)
at
org.apache.maven.shared.invoker.PrintStreamHandler.consumeLine(PrintStreamHandler.java:76)
at org.apache.maven.shared.utils.cli.StreamPumper.consumeLine(StreamPumper.java:158)
at org.apache.maven.shared.utils.cli.StreamPumper.run(StreamPumper.java:88)
We have version 3.0.0-M6 of surefire in Rawhide, which has this bug:
https://issues.apache.org/jira/browse/SUREFIRE-2056. It looks like
maven-invoker has run afoul of that bug.
--
Jerry James
http://www.jamezone.org/