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

Make CalciteCatalogReader.getSchema extendable to support dynamically load schema tree - getSchema need to be set to protected to allow overriding

    XMLWordPrintableJSON

Details

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

    Description

      In system like Drill, there is a need to load partial schema (e.g. for only one storage plugin) only when needed. Since Drill has no way to get a full available schema tree before hand, nor could Drill cache available schema for a storage plugin(e.g. Hive, MongoDB) since the storage plugin may not have notification mechanism to update Schema tree timely.

      The proposed fix is to load schema dynamically as shown in https://issues.apache.org/jira/browse/DRILL-5089

      To achieve this, we need to make CalciteCatalogReader.getSchema to be protected so it could be overridden by derived class while the derived class can reuse other functionalities in CalciteCatalogReader class
      private CalciteSchema getSchema(Iterable<String> schemaNames,
      SqlNameMatcher nameMatcher)

      Attachments

        Issue Links

          Activity

            People

              julianhyde Julian Hyde
              cshi Chunhui Shi
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: