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

AggregateJoinTransposeRule incorrectly pushes down distinct count into join

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Duplicate
    • Affects Version/s: 1.18.0
    • Fix Version/s: 1.19.0
    • Component/s: core
    • Labels:
      None

      Description

      AggregateJoinTransposeRule.EXTENDED can push down aggregate functions into the join.

      For Distinct Count (and other distinct aggregate functions) this should not be performed the same way as for simple count, since distinct count is not a decomposable function. [1]

      While this can be done in theory, by adding the distinct column to the list of groups in below aggregate[2], I want to fix the buggy behavior first, before trying to improve the existing rule.

      [1] Dynamic Programming: The Next Step, M. Eich, G. Moerkotte (https://ub-madoc.bib.uni-mannheim.de/37228/1/main.pdf)
      [2] Including Group-By in Query Optimization, S. Chaudhuri, K. Shim (https://pdfs.semanticscholar.org/3079/5447cec18753254edbbd7839f0afa58b2a39.pdf)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                julianhyde Julian Hyde
                Reporter:
                andts Andrew Tsvelodub
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: