Hide Forgot
Date of First Response: 2009-09-10 01:39:37 securitylevel_name: Public A leak was found when a rulebase contained 2 or more queries on it.
Link: Added: This issue is related to JBRULES-2091
Fix in place.
For documenting this in the Release Notes, can you please confirm the following and fill in the missing information. Dot point explanations are fine: The CAUSE (what was actually broken) * This was a regression bug caused by a problem with the offset calculation algorithm for "temporal reasoning." CONSEQUENCES of the bug (how it impacts users.) * A memory leak was occurring when rulebases containing two or more queries were run. The FIX (what was changed to eliminate this bug) and * RESULTS of the fix (what now happens for users.) *
We are still awaiting the outstanding information for the Release Notes on this one. Please provide it as soon as possible. Thanks.
The CAUSE (what was actually broken) * Drools uses special facts to execute queries. These facts should not be tracked by the "temporal reasoning" algorithm, but due to a regression they were. CONSEQUENCES of the bug (how it impacts users.) * Tracking Query facts means they were kept in memory longer than necessary, causing a memory leak when the knowledge base contained two or more queries. The FIX (what was changed to eliminate this bug) and * Fixed the temporal reasoning algorithm to not track query facts. Also added a special FactType for queries to avoid regressions in the future. RESULTS of the fix (what now happens for users.) * Memory leak is fixed.
added to the 5.0.CP01 release notes as resolved: JBRULES-2091 Memory leaks could occur when the KnowledgeBase contained more than one query. This was caused by the facts being incorrectly tracked. This has been fixed.