Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-1355

Drill may miss using storage engine specific rules in optimizer.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.5.0
    • None
    • None

    Description

      Currently, Drill implementation uses a static variable for the rulesets used by optimizer. Once the rule set variable is initialized, it will not be updated, even if there is new storage plugin added or registered.

      This will cause problems:

      1) In HBase unit test, if there is no hbase storage plugin configured when run the unit test, the Hbase test suit will add a new HBase plugin on-the-fly. However, the optimizer's ruleset has been initialized. This will essentially disable the hbase specific rule (currently the HBasePushFilterIntoScanRule).

      2) If user starts a Drillbit, runs some queries, then adds a new storage plugin, the rules specific for this new plugin will not be added to optimizer, since the optimizer's ruleset has already been initialized. That means query refers to the new plug may not have those rules executed. This may lead to less efficient query execution plan.

      Attachments

        Activity

          People

            DrillCommitter DrillCommitter
            jni Jinfeng Ni
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: