Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-1816

JaninoRelMetadataProvider generated classes leak ACTIVE nodes on exception

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.13.0
    • Fix Version/s: 1.13.0
    • Component/s: core
    • Labels:
      None

      Description

      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.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                rusanu Remus Rusanu
                Reporter:
                rusanu Remus Rusanu
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: