HI all,

We’ve got an application that has the need to deploy dynamically generated drl periodically. The drl is regenerated from a set of database tables whenever a change is made to the tables. After running through the generation and package building we eventually get an out of memory error for permGen. The error is hit with 128 and 256mb of perm gen.

 

The method that seems to cause the error is addPackageFromDRL on the PackageBuilder. I’ve attached a method that represents what we are doing with the drl and the package building in the 4.0.4 form. I get the error in both 4.0.4 and in the 5.0 versions of drools. In the 4.0.4 version shadow facts are disabled on the rule base.

 

Is regenerating rules frequently from a drl format a valid use case?

 

Any help in improving the perm gen consumption or fixing our use of drools is greatly appreciated.

 

Thanks,

Joe