[ 
https://issues.apache.org/jira/browse/EXEC-120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17722296#comment-17722296
 ] 

Gary D. Gregory edited comment on EXEC-120 at 5/12/23 9:40 PM:
---------------------------------------------------------------

[~agorguy] The test cases in question pass consistently for me locally with 
{{mvn clean test}}. They also consistently pass on GitHub [1]. Unless you can 
tell me what you think is specifically wrong with those test cases and how they 
should be fixed or improved I see little value in adding anything to the 
project README concerning those tests. In any case, the README for the Commons 
components is generated at release time, so a Javadoc comment would only make 
sense anyway, this would not be information for the README.

[1] https://github.com/apache/commons-exec/actions



was (Author: garydgregory):
Sigh

> Some flaky tests
> ----------------
>
>                 Key: EXEC-120
>                 URL: https://issues.apache.org/jira/browse/EXEC-120
>             Project: Commons Exec
>          Issue Type: Bug
>            Reporter: Agor
>            Priority: Major
>
> Hello,
> We tried running this project and discovered that it contains some flaky 
> tests (i.e., tests that nondeterministically pass and fail). We found these 
> tests to fail more frequently when running them on certain machines of ours.
> To prevent others from running this project and its tests in machines that 
> may result in flaky tests, we suggest adding information to the README.md 
> file indicating the minimum resource configuration for running the tests of 
> this project as to prevent observation of test flakiness.
> If we run this project in a machine with 1cpu and 1gb ram, we observe flaky 
> tests. We found that the tests in this project did not have any flaky tests 
> when we ran it on machines with 2cpu and 2gb ram.
> Here is a list of the tests we have identified and their likelihood of 
> failure on a system with less than the recommended 2 CPUs and 2 GB RAM.
>  # org.apache.commons.exec.issues.Exec34Test#testExec34_1 (2 out 10)
>  # 
> org.apache.commons.exec.issues.Exec65Test#testExec65WithSudoUsingShellScript 
> (2 out 10)
> Please let me know if you would like us to create a pull request on this 
> matter (possibly to the readme of this project).
> Thank you for your attention to this matter. We hope that our recommendations 
> will be helpful in improving the quality and performance of your project, 
> especially for others to use.
> Reproducing
> {code:java}
> FROM maven:3.5.4-jdk-11
> WORKDIR /home/
> RUN git clone https://github.com/apache/commons-exec && \
>   cd commons-exec && \
>   git checkout 7204a355ba5ffba21d828ce993b27c81b5565f43
> WORKDIR /home/commons-exec
> RUN mvn install -DskipTests
> ENTRYPOINT ["mvn", "test", "-fn"]
> {code}
> Build the image:
> {code:java}
> $> mkdir tmp
> $> cp Dockerfile tmp
> $> cd tmp
> $> docker build -t commons-exec . # estimated time of build 3m
> {code}
>  
> Running:
> this configuration likely prevents flakiness (no flakiness in 10 runs)
> {code:java}
> $> docker run --rm --memory=2g --cpus=2 --memory-swap=-1 commons-exec | tee 
> output.txt
> $> grep "Failures:" output.txt # checking results{code}
> this other configuration –similar to the previous– can’t prevent flaky tests 
> (observation in 10 runs)
> {code:java}
> $> docker run --rm --memory=1g --cpus=1 --memory-swap=-1 commons-exec | tee 
> output2.txt
> $> grep "Failures:" output2.txt # checking results{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to