Uploaded image for project: 'HPCC'
  1. HPCC
  2. HPCC-9327 Conditional code improvements: Stage 3
  3. HPCC-11018

Fix problems with alias annotations on transforms



    • Sub-task
    • Status: Scheduled
    • Major
    • Resolution: Unresolved
    • None
    • None
    • Code Generator


      Currently the cse code annotates the expression tree with
      i) aliases
      ii) alias_scopes to indicate where the aliases should be evaluated

      Unfortunately when you have nested records, the transforms for the associated no_createrows are processed more than once, and sometimes that can cause aliases to be added in new places, or alias scopes to be added. This then means that alias(no_createrow) fails to match, causing the row to be recreated.

      An example of this can be seen with rchampion1.eclxml if the no_select expansion of a no_createrow is made independent of scope (as it should be).

      I think it occurs when you have 2 levels of nested rows, and different values assigned to the 1st level, but the same value assigned to the second level - which causes the place to evaluate the aliases to differ between the two.

      I suspect the only sensible solution is to
      i) mark alias if they are unconditonal
      ii) completely change the way that aliases are evaluated


        Issue Links



              ghalliday Gavin Halliday
              ghalliday Gavin Halliday
              0 Vote for this issue
              1 Start watching this issue