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

Allow multiple providers for the same kind of metadata

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.7.0
    • None
    • None

    Description

      I am getting exceptions caused by CALCITE-604.

      The first exception I got while using PhoenixMetadataProvider was: "java.lang.IllegalArgumentException: duplicate key" in ChainedMetadataProvider.handlers(), which was caused by the use of ImmutableMap.Builder.
      According to https://groups.google.com/forum/#!topic/sakai-kernel/Kj1WRBg9pi8, in such scenarios, we should use HashMap instead.

      After fixing the above issue, I got NPE at ReflectiveRelMetadataProvider.java:278 if (RelNode.class.isAssignableFrom(relClass.getSuperclass())) {, for which I didn't know why it hadn't caused any trouble before. Since this logic wasn't really changed in CALCITE-604, I assume it went through the wrong code path.

      Looks like we should add more test cases for custom metadata in Calcite.

      Attachments

        Issue Links

          Activity

            People

              julianhyde Julian Hyde
              maryannxue Wei Xue
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: