Remus Rusanu created CALCITE-1816:
-------------------------------------
Summary: JaninoRelMetadataProvider generated classes leak ACTIVE
nodes on exception
Key: CALCITE-1816
URL: https://issues.apache.org/jira/browse/CALCITE-1816
Project: Calcite
Issue Type: Bug
Components: core
Affects Versions: 1.13.0
Reporter: Remus Rusanu
Assignee: Remus Rusanu
The exception catch in the GeneratedMetadataHandler_XXX removes the ACTIVE
guard node in the mq.map cache only if the exception is of type NoHandler. For
any other exception (notably for CyclicMetadataException) the ACTIVE node is
leaked (left in the map). CyclicMetadataException exceptions are frequent
because of cycles in RelSubset.
This issue is not visible normally because the aggressive refresh of mq via
RelMetadaatQuery.instance() calls (CALCITE-1812). With my changes to increase
the lifetime of the used mq instances the leaked nodes become a problem as they
trigger bogus CyclicMetadataException from leftover nodes.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)