[rules-dev] Shadow Facts

Mark Proctor mproctor at codehaus.org
Sat Feb 10 23:11:56 EST 2007


I'm finding that in manners shadow facts add on average about 10% or 
under to execution times.

test by changing:
count.setValue(  count.getValue() + 1 ); 
modify( count );

To (with shadow facts turned off)
retract( count );
count.setValue(  count.getValue() + 1 );       
assert( count );

The problem I'm having is finding a generic and clean way to make shadow 
facts configurable and have the .drl adapt appropriately, without the 
user having to manually do retract and asserts, instead of a modify.

Having had feedback from users that are asserting a huge number of facts 
(approx 1mill) into the working memory, having the ability to not deal 
with shadowfacts will improve performance and memory, more so than in 
the case of manners. I'd be interested ot know if the 10% or less rule 
is still true with those large numbers, and also the size in memory.

Mark




More information about the rules-dev mailing list