You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Remus Rusanu (JIRA)" <ji...@apache.org> on 2017/05/31 09:09:04 UTC

[jira] [Created] (CALCITE-1816) JaninoRelMetadataProvider generated classes leak ACTIVE nodes on exception

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)