Bug 777820 (SOA-346)

Summary: CBR using rules has poor performance
Product: [JBoss] JBoss Enterprise SOA Platform 4 Reporter: Martin Vecera <mvecera>
Component: JBossESBAssignee: Mark Little <mark.little>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 4.2 CP01   
Target Milestone: ---   
Target Release: 4.3 GA   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/SOA-346
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Oracle 10g
Last Closed: 2008-09-15 11:33:44 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Martin Vecera 2008-01-21 13:15:45 UTC
Date of First Response: 2008-02-01 12:26:04
project_key: SOA

See linked issue.

SOA-240 - performance results
Testify - http://testify.test.redhat.com/testplans.cgi?op=view&id=516
Hudson (RHEL4) - http://hudson.qa.jboss.com/hudson/view/SOA/job/SOA-Platform-PerformanceTest-RHEL4/

Comment 1 Martin Vecera 2008-01-21 13:16:08 UTC
Link: Added: This issue is a dependency of JBESB-1504


Comment 2 Martin Vecera 2008-01-21 13:16:53 UTC
Link: Removed: This issue is a dependency of JBESB-1504 


Comment 3 Martin Vecera 2008-01-21 13:17:05 UTC
Link: Added: This issue depends JBESB-1504


Comment 4 Martin Vecera 2008-01-21 13:17:41 UTC
Link: Added: This issue related SOA-84


Comment 5 Martin Vecera 2008-01-21 13:19:30 UTC
Link: Added: This issue is related to SOA-240


Comment 6 Len DiMaggio 2008-02-01 17:26:04 UTC
Suggestion from Burr - try the test with Rules configured in sequential mode

* Notes from IRC talk with Mark Proctor:

Sequential mode is used when you don't modify or retrac data - its a one shot use of a working memory that is slightly more scalable instead determining that statically at compile time.

It's a little faster and a little less memory it's a little faster and a little less memory but you have to have huge rules and data really to see the real advantage.

How to configure: Just set the conf value - and just remember that if you later add/modify stuff in consequence it'll get ignored - in RuleBaseConfiguration

* Burr thought that sequential mode was "recommended but not documented" - Mark Proctor said:

It is documented. We detail the entire algorithm in the docs. We don't go into it's use that much as its really no different thats why we don't bother with any examples. Most peoples rules will only see maybe 3% faster, but if you have a really large system that could be 350%, but we are talking like 50K facts and 10K rules.




Comment 7 Len DiMaggio 2008-02-01 17:26:37 UTC
Comment - Martin - can you try this and see if the test results are any better?

Comment 8 Martin Vecera 2008-02-11 14:59:18 UTC
* Notes from Jeff Delong:
"Sequential mode can only be used with a StatelessSession and is off by 
default. To turn on either set the RuleBaseConfiguration.setSequentail 
to true or set the rulebase.conf property drools.sequential to true."

Notice first off the Sequential only works with StatelessSession. Since 
SOA-P 4.2 only supports StatefulSessions, we cannot use sequential.

Comment 9 Martin Vecera 2008-09-15 11:33:44 UTC
Great job - before 21 msgs/sec, after 103 msgs/sec