Hide Forgot
Date of First Response: 2009-09-10 01:08:48 securitylevel_name: Public ReteooRuleBaseMultiThreadedTest is failing because of race conditions in AbstractRuleBase java.lang.NullPointerException at org.drools.common.AbstractRuleBase.lock(AbstractRuleBase.java:408) at org.drools.common.AbstractRuleBase.removePackage(AbstractRuleBase.java:655) at org.drools.reteoo.ReteooRuleBaseMultiThreadedTest$PackageModifier.doOperation(ReteooRuleBaseMultiThreadedTest.java:143) at org.drools.reteoo.ReteooRuleBaseMultiThreadedTest$BlockedThread.run(ReteooRuleBaseMultiThreadedTest.java:121) junit.framework.AssertionFailedError: Exception in modifier thread expected:<false> but was:<true> at org.drools.reteoo.ReteooRuleBaseMultiThreadedTest.testNewSessionWhileModifyingRuleBase(ReteooRuleBaseMultiThreadedTest.java:80) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
Link: Added: This issue is related to JBRULES-2029
Fix in place.
For documenting this in the Release Notes, can you please confirm the following and fill in the missing information. Dot point explanations are fine: The CAUSE (what was actually broken) * the ReteooRuleBaseMultiThreadedTest in the AbstractRuleBase was failing due to a Race Condition problem CONSEQUENCES of the bug (how it impacts users.) * A null pointer exception would occur. The FIX (what was changed to eliminate this bug) and * RESULTS of the fix (what now happens for users.) *
We are still awaiting the outstanding information for the Release Notes on this one. Please provide it as soon as possible. Thanks.
The CAUSE (what was actually broken) * the ReteooRuleBaseMultiThreadedTest in the AbstractRuleBase was failing due to a Race Condition problem CONSEQUENCES of the bug (how it impacts users.) * A null pointer exception would occur. The FIX (what was changed to eliminate this bug) and * Fix lock management in the AbstractRuleBase class to avoid the race condition. RESULTS of the fix (what now happens for users.) * No more exceptions due to race condition.
added to the 5.0.CP01 release notes as resolved: JBRULES-2029 A race condition in the class AbstractRuleBase could cause a null pointer exception. The lock management in AbstractRuleBase has been updated to prevent this race condition occurring.