[
https://issues.jboss.org/browse/JBRULES-2284?page=com.atlassian.jira.plug...
]
Michael Anstis resolved JBRULES-2284.
-------------------------------------
Resolution: Out of Date
I was able to build a KnowledgeBase using the provided file without problem:-
{code}
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
DecisionTableConfiguration dtconf =
KnowledgeBuilderFactory.newDecisionTableConfiguration();
dtconf.setInputType( DecisionTableInputType.CSV );
kbuilder.add( ResourceFactory.newClassPathResource( "benchmark20000.csv" ),
ResourceType.DTABLE, dtconf );
{code}
OutOfMemoryException at DT loading
----------------------------------
Key: JBRULES-2284
URL:
https://issues.jboss.org/browse/JBRULES-2284
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: drools-decisiontables
Affects Versions: 5.0.1.FINAL
Environment: Core2Quad Windows XP Pro 64
Reporter: Sergey Vanskov
Assignee: Michael Anstis
Fix For: 5.3.0.CR1
Attachments: benchmark20000.csv
I have created DT having 20.000 rows with 4 conditions and 1 action in CSV format
and set the following parameters for JVM -Xmx3072M -XX:MaxPermSize=256M.
I haveOutOfMemoryException with the following stack trace
java.lang.OutOfMemoryError: Java heap space
at java.lang.String.format(String.java:2558)
at
org.drools.lang.DroolsParserExceptionFactory.formatParserLocation(DroolsParserExceptionFactory.java:203)
at
org.drools.lang.DroolsParserExceptionFactory.createErrorMessage(DroolsParserExceptionFactory.java:104)
at
org.drools.lang.DroolsParserExceptionFactory.createDroolsException(DroolsParserExceptionFactory.java:89)
at org.drools.lang.DRLParser.reportError(DRLParser.java:350)
at org.antlr.runtime.BaseRecognizer.recoverFromMismatchedToken(BaseRecognizer.java:624)
at org.antlr.runtime.BaseRecognizer.match(BaseRecognizer.java:115)
at org.drools.lang.DRLParser.fact(DRLParser.java:9841)
at org.drools.lang.DRLParser.lhs_pattern(DRLParser.java:9388)
at org.drools.lang.DRLParser.pattern_source(DRLParser.java:7432)
at org.drools.lang.DRLParser.lhs_unary(DRLParser.java:6582)
at org.drools.lang.DRLParser.lhs_and(DRLParser.java:6229)
at org.drools.lang.DRLParser.lhs_or(DRLParser.java:5877)
at org.drools.lang.DRLParser.lhs(DRLParser.java:5673)
at org.drools.lang.DRLParser.normal_lhs_block(DRLParser.java:5580)
at org.drools.lang.DRLParser.when_part(DRLParser.java:3975)
at org.drools.lang.DRLParser.rule(DRLParser.java:3769)
at org.drools.lang.DRLParser.statement(DRLParser.java:993)
at org.drools.lang.DRLParser.compilation_unit(DRLParser.java:484)
at org.drools.compiler.DrlParser.compile(DrlParser.java:238)
at org.drools.compiler.DrlParser.parse(DrlParser.java:78)
at org.drools.compiler.DrlParser.parse(DrlParser.java:83)
at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:275)
at org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:510)
at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:31)
....
Is 3Gb not enough for such a problem?!
How may memory requirements be estimated?
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira