DecisionOldOldTreeBuilderTest::randomForestTest failed for us on commit 18b60b59:
randomForestTest on randomForestTest(quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest)(quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest) Time elapsed: 5.291 sec <<< FAILURE!
java.lang.AssertionError: attribute: timeOfArrival-minuteOfDay. branch.getProbabilityOfTrueChild(): 0.9
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.assertTrue(Assert.java:41)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest$Conditions.satisfiesBranchConditions(DecisionOldOldTreeBuilderTest.java:159)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest$Conditions.satisfiesConditions(DecisionOldOldTreeBuilderTest.java:152)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.recurseTree(DecisionOldOldTreeBuilderTest.java:127)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.recurseTree(DecisionOldOldTreeBuilderTest.java:130)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.recurseTree(DecisionOldOldTreeBuilderTest.java:129)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.recurseTree(DecisionOldOldTreeBuilderTest.java:129)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.recurseTree(DecisionOldOldTreeBuilderTest.java:130)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.recurseTree(DecisionOldOldTreeBuilderTest.java:130)
at quickml.supervised.tree.decisionTree.DecisionOldOldTreeBuilderTest.randomForestTest(DecisionOldOldTreeBuilderTest.java:116)
We discovered this test to be flaky while using DeFlaker, and we found some races using RV-Predict.
Our initial debugging shows that this failure is due to data races (rather than random numbers). For example, there is a data race on the field, quickml.supervised.tree.branchingConditions.StandardBranchingConditions.minSplitFraction, with a concurrent read at quickml.supervised.tree.branchingConditions.StandardBranchingConditions.copy(StandardBranchingConditions.java:114) and a concurrent write at quickml.supervised.tree.branchingConditions.StandardBranchingConditions.update(StandardBranchingConditions.java:107). There is also a data race on the field, quickml.supervised.tree.branchingConditions.StandardBranchingConditions.minScore, with two concurrent writes at quickml.supervised.tree.branchingConditions.StandardBranchingConditions.update(StandardBranchingConditions.java:103) from two different threads.
DecisionOldOldTreeBuilderTest::randomForestTest failed for us on commit 18b60b59:
We discovered this test to be flaky while using DeFlaker, and we found some races using RV-Predict.
Our initial debugging shows that this failure is due to data races (rather than random numbers). For example, there is a data race on the field,
quickml.supervised.tree.branchingConditions.StandardBranchingConditions.minSplitFraction
, with a concurrent read atquickml.supervised.tree.branchingConditions.StandardBranchingConditions.copy(StandardBranchingConditions.java:114)
and a concurrent write atquickml.supervised.tree.branchingConditions.StandardBranchingConditions.update(StandardBranchingConditions.java:107)
. There is also a data race on the field,quickml.supervised.tree.branchingConditions.StandardBranchingConditions.minScore
, with two concurrent writes atquickml.supervised.tree.branchingConditions.StandardBranchingConditions.update(StandardBranchingConditions.java:103)
from two different threads.Let us know if you need more help in debugging.