Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-6177

Clean up handcrafted IRs if they encounter error during creation

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Impala 2.12.0
    • Component/s: Backend
    • Labels:
      None
    • Epic Color:
      ghx-label-8

      Description

      Some Codegen() calls in exec nodes might encounter an error and return early. This cause a half baked/ malformed IR to be generated that could likely add to query compilation time.

      An example would be in the case of a table with a column of char datatype and query:

      select * from charTable A, charTable B where A.charColumn = B.charColumn and A.charColumn = 'foo';
      

      this query tries to create a runtime filter for the char column, but returns in the middle of crafting the IR because it realizes that 'char' type is not supported. This cause an incomplete IR to be created that looks like this:

      define void @InsertRuntimeFilters(%"class.impala::PhjBuilder"* %this, %"class.impala::TupleRow"* %row) {
      entry:
      }
      

      the objective of this task would be to identify such cases and clean up and remove such incomplete IR methods from the module.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bikramjeet.vig Bikramjeet Vig
                Reporter:
                bikramjeet.vig Bikramjeet Vig
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: