Hi,
I met an error when running DynComp on the Math project from defects4j. When I use the TestRunner, some of the bug ids will have the issue https://github.com/codespecs/daikon/issues/304. Some of the bug ids could be solved by Mark’s solution. However, some others will have "# A fatal error has been detected by the Java Runtime Environment:..." (detailed output is pasted at the end).
For example, for the Math-2f (Math project, bug 2, fixed version), I wrote a helper to run the specified test,
import org.junit.Test;
public class TestIt{
@Test
public void testIt() throws Exception {
org.apache.commons.math3.distribution.HypergeometricDistributionTest test = new org.apache.commons.math3.distribution.HypergeometricDistributionTest();
test.testMath1021();
}
}If I only run the Test, it works well:
$ java -Xmx43G -cp /home/ubuntu/daikon-5.8.8/daikon.jar:target/classes/:target/test-classes/:/home/ubuntu/launcher/:. org.junit.runner.JUnitCore Brok
er |& tee ft_invariants_files0/dyncomp-output.txt
JUnit version 4.13.2
.
Time: 0.028
OK (1 test)
But when I run DynComp with it, it will has the
fatal error of JVM as below:
$ java -Xmx43G -cp /home/ubuntu/daikon-5.8.8/daikon.jar:target/classes/:target/test-classes/:. daikon.DynComp '--ppt-select-pattern=^org\.apache\.commons\.math3\.distribution\.HypergeometricDistribution' org.junit.runner.JUnitCore Broker
JUnit version 4.13.2
.#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f390c7d91c2, pid=22056, tid=0x00007f3923286700
#
# JRE version: OpenJDK Runtime Environment (8.0_292-b10) (build 1.8.0_292-8u292-b10-0ubuntu1~18.04-b10)
# Java VM: OpenJDK 64-Bit Server VM (25.292-b10 mixed mode linux-amd64 )
# Problematic frame:
# j org.apache.commons.math3.util.FastMathLiteralArrays.<clinit>()V+1377
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/ubuntu/APR_Projects/Math/2/Math2f/hs_err_pid22056.log
#
# If you would like to submit a bug report, please visit:
#
The detailed reproducing steps are:
2. checkout the Math-2f using `defects4j checkout -p Math -v 2f -w Math2f`
3. go to Math2f and compile the project using `defects4j compile`
4. compile the helper TestIt.java mentioned above
5. go to Math2f and run `java -Xmx43G -cp $DAIKONDIR/daikon.jar:target/classes/:target/test-classes/:<the helper's path> daikon.DynComp '--ppt-select-pattern=^org\.apache\.commons\.math3\.distribution\.HypergeometricDistribution' org.junit.runner.JUnitCore TestIt
Thank you very much for your help!
Regards,
Bo