I ues Drools 7.57.0 version ,Each time a rule is added, mateSpace usage increases and is not recycled
Map<String, KieBaseModel> kieBaseModels = kieModuleModel.getKieBaseModels();
KieBaseModel kieBaseModel = kieBaseModels.get(kieBaseName);
if (kieBaseModel == null) {
kieBaseModel = kieModuleModel.newKieBaseModel(kieBaseName);
KieSessionModel kieSessionModel = kieBaseModel.newKieSessionModel(kieBaseName);}
List<String> packages = kieBaseModel.getPackages();
if (CollUtil.isEmpty(packages) || !packages.contains(pkg)) {
kieBaseModel.addPackage(pkg);
}
kieFileSystem.write(filePath, engineRule.getScript());
kieFileSystem.writeKModuleXML(kieModuleModel.toXML());
KieBuilder kieBuilder = kieServices.newKieBuilder(kieFileSystem);
kieBuilder.buildAll();
kieContainer.updateToVersion(kieRepository.getDefaultReleaseId());