-
Task
-
Resolution: Won't Do
-
Major
-
None
-
7.37.0.Final
-
None
-
2020 Week 19-21 (from May 4), 2020 Week 22-24 (from May 25)
-
1
-
NEW
-
NEW
Regarding the cache size default value of LambdaIntrospector.methodFingerprintsMap,
If "drools.externaliseCanonicalModelLambda" option is not enabled, the cache is frequently used so it will not likely retain old classloaders. So the default value '32' would be fine.
If "drools.externaliseCanonicalModelLambda" option is enabled, the cache is used in rare occasions:
A) Lambda for binding variable (DROOLS-5328)
B) Lambda which ExecModelLambdaPostProcessor failed to externalize (DROOLS-5329)
So one build may use only a few entries in a cache Map. Then, the cache eventually may retain several old classloaders after multiple builds. Generally, the classloader leak issue is prioritized over build time performance benefit so '0' is the good default value when externaliseCanonicalModelLambda is enabled.
- relates to
-
DROOLS-5326 Make LambdaIntrospector.methodFingerprintsMap cache size configurable
- Closed
-
DROOLS-5353 Avoid ClassLoader retention in LambdaIntrospector
- Closed