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

Remove dependency on CalciteConnectionConfig from SqlValidatorCatalogReader and Table core API

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: core, druid-adapter
    • Labels:
      None

      Description

      SqlValidatorCatalogReader#getConfig() returns a CalciteConnectionConfig which represents a set of settings when using a calcite connection. This is an object specific to calcite connector, not to the core API. The reason this method is needed is so that validator can pass it to Table#rolledUpColumnValidInsideAgg(String, SqlCall, SqlNode, CalciteConnectionConfig) but the only instance actually using it is DruidTable.

      open this ticket to refactor the code so that SchemaFactory can accept the config, and inject the config into DruidSchema, it can then be injected into DruidTable . Then refactor Table to remove the extra argument (Table is part of the base API, so it should not depend either on CalciteConnectionConfig) 

      In this way, we will restrict the dependency to only DruidSchema and DruidTable, not the core Catalogreader/Table API.

        Attachments

        Issue Links

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              ChunfengPei chunfeng pei

              Dates

              • Created:
                Updated:

                Issue deployment