Uploaded image for project: 'HPCC'
  1. HPCC
  2. HPCC-22673

Inefficient code generated from a KEL query

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: New
    • Priority: Not specified
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Code Generator
    • Labels:
      None

      Description

      Still investigating, but example is kel352c.eclxml

      There are some IFs of the form:

      IF(EXISTS(a), b, c)

      Where EXISTS(a) can be executed inline (canProcessInline is true), but it is quite complex, and the transforms contain code that requires child queries.

      But that has two problems:
      i) it means that the code isn't commoned up with other activities which also evaluate the same code as child query
      ii) the code itself can be executed inline, but the transforms contain code that cannot be executed inline - so it isn't really "simple", although it appears so at first.

      removing the canProcessInline() test in isEfficientToHoistDataset() significantly shrinks this particular query.

       

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                ghalliday Gavin Halliday
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: