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

SortUnionTransposeRule should not push SORT past a UNION when SORT's fetch is DynamicParam

    XMLWordPrintableJSON

Details

    Description

      A query like

                 SELECT x.c11 FROM ( 
                           SELECT tt1.c11 FROM (
                                         SELECT c11 FROM sch1.foo as cp1 LIMIT ?
                           ) AS tt1 
                           UNION ALL
                           SELECT tt2.c11 FROM (
                                         SELECT c11 FROM sch1.foo as cp2 LIMIT ?
                            ) AS tt2
                  ) AS x    LIMIT ?  
      

      hangs on building a plan, with debug log, can see a growing plans with a nested LogicalSort nodes, eventually it fails with StackOverflow...,

             .....
      LogicalSort(fetch=[?2])
        LogicalSort(subset=[rel#3740:RelSubset#269.NONE.[]], fetch=[?2])
          LogicalSort(subset=[rel#3670:RelSubset#264.NONE.[]], fetch=[?2])
            LogicalSort(subset=[rel#3600:RelSubset#259.NONE.[]], fetch=[?2])
              LogicalSort(subset=[rel#3530:RelSubset#254.NONE.[]], fetch=[?2])
                LogicalSort(subset=[rel#3460:RelSubset#249.NONE.[]], fetch=[?2])
                  LogicalSort(subset=[rel#3390:RelSubset#244.NONE.[]], fetch=[?2])
                    LogicalSort(subset=[rel#3320:RelSubset#239.NONE.[]], fetch=[?2])
                      LogicalSort(subset=[rel#3250:RelSubset#234.NONE.[]], fetch=[?2])
                        LogicalSort(subset=[rel#3180:RelSubset#229.NONE.[]], fetch=[?2])
                          LogicalSort(subset=[rel#3110:RelSubset#224.NONE.[]], fetch=[?2])
                            LogicalSort(subset=[rel#3040:RelSubset#219.NONE.[]], fetch=[?2])
      	... 
      

      Seem like an issue with `SortUnionTransposeRule `

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rrrrrr111 Roman Churganov
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: