I believe Guvnor may not be at fault, but a potential problem with the compilation process within Drools Expert.
If you construct a smaller KnowledgeBase from a DRL String containing the erroneous regular expression does it compile (not using Guvnor)? Ideally it'd be good to try to construct a DRL String containing all of your rules outside of Guvnor but this may not be possible as I believe you are using Guvnor's Decision Tables. I am just trying to think of a way to find a minimal failing unit test that the Drools Expert developers may be able to use to trace any problem. On 3 February 2012 03:07, vadlam <[email protected]> wrote: > we have hundreds of rules created in Guvnor 5.3..Final. > > some of them use regular expressions when using the matches operator. > > when business users enter an incorrect regular expression and rules are > built in guvnor subsequently, we have noticed heap consumption grow quite > a > bit and not released subsequenlty. > currently, on a windows server that has approximately 1.3 GB heap > available, > running 1 or builds consumes the whole memory and eventually crashes the > server. > > The following is from one such log trace > > [Near : {... **HST ....}] > ^ > [Line: 1, Column: 3] > [Error: Missing left node] > [Near : {... **HST ....}] > ^ > [Line: 1, Column: 3] > at > org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:293) > at > org.mvel2.compiler.ExpressionCompiler.compile(ExpressionCompiler.java:62) > at > org.drools.rule.builder.PatternBuilder.setInputs(PatternBuilder.java:903) > at > > org.drools.rule.builder.PatternBuilder.buildRelationalExpression(PatternBuilder.java:599) > at > org.drools.rule.builder.PatternBuilder.build(PatternBuilder.java:540) > at > > org.drools.rule.builder.PatternBuilder.processConstraintsAndBinds(PatternBuilder.java:398) > at > org.drools.rule.builder.PatternBuilder.build(PatternBuilder.java:314) > at > org.drools.rule.builder.PatternBuilder.build(PatternBuilder.java:131) > at > > org.drools.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:65) > at > org.drools.compiler.PackageBuilder.addRule(PackageBuilder.java:2289) > at > org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:807) > at > > org.drools.guvnor.server.contenthandler.GuidedDTContentHandler.compile(GuidedDTContentHandler.java:63) > at > > org.drools.guvnor.server.builder.PackageAssembler.loadAllButDRLAssets(PackageAssembler.java:83) > at > > org.drools.guvnor.server.builder.PackageAssembler.loadAssets(PackageAssembler.java:73) > at > > org.drools.guvnor.server.builder.PackageAssembler.buildPackage(PackageAssembler.java:65) > at > > org.drools.guvnor.server.builder.PackageAssembler.compile(PackageAssembler.java:55) > at > > org.drools.guvnor.server.RepositoryPackageOperations.buildPackage(RepositoryPackageOperations.java:506) > at > > org.drools.guvnor.server.RepositoryPackageOperations.buildPackage(RepositoryPackageOperations.java:475) > at > > org.drools.guvnor.server.RepositoryPackageService.buildPackage(RepositoryPackageService.java:314) > > Any thoughts or suggestions around these memory leak issues? > > -- > View this message in context: > http://drools.46999.n3.nabble.com/memory-leak-in-Guvnor-5-3-when-rules-have-incorrect-regular-expressions-tp3711977p3711977.html > Sent from the Drools: User forum mailing list archive at Nabble.com. > _______________________________________________ > rules-users mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/rules-users >
_______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
