Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-8646

Re-engineer the code for post-join operations

Details

    • 10.2.0-4, 10.2.0-5

    Description

      <SanjaByelkin> instead of creating new JOIN_TABs array (i.e. new plan) to process results in temporary table (GROUPING ORDERING)
      <SanjaByelkin> just additional JOIN_TABs added at the end which represent such operation
      <SanjaByelkin> so you never rewrite it
      <SanjaByelkin> it is backport from MySQL
      <SanjaByelkin> so you can add any number of postprocessing operations
      <SanjaByelkin> and he need it for window functions

      Attachments

        Issue Links

          Activity

            GROUP BY pushdown code requires that a temporary table is created (although with do_not_open=1) even if the query itself doesn't need it.
            Example:

              SELECT SUM(1) FROM seq_1_to_10;

            This crashes if group_by_handler::table is not set.

            psergei Sergei Petrunia added a comment - GROUP BY pushdown code requires that a temporary table is created (although with do_not_open=1) even if the query itself doesn't need it. Example: SELECT SUM(1) FROM seq_1_to_10; This crashes if group_by_handler::table is not set.

            Pushed a fix for maria.maria.

            Buildbot shows that valgrind tests crash on start:
            http://buildbot.askmonty.org/buildbot/builders/work-amd64-valgrind/builds/8348

            sql/sql_base.cc:7907 is

              DBUG_PRINT("enter", ("ref_pointer_array: %p", ref_pointer_array));

            should be easy to fix

            psergei Sergei Petrunia added a comment - Pushed a fix for maria.maria . Buildbot shows that valgrind tests crash on start: http://buildbot.askmonty.org/buildbot/builders/work-amd64-valgrind/builds/8348 sql/sql_base.cc:7907 is DBUG_PRINT("enter", ("ref_pointer_array: %p", ref_pointer_array)); should be easy to fix

            Should be fixed now

            psergei Sergei Petrunia added a comment - Should be fixed now

            Fixed sequence.group_by test.

            psergei Sergei Petrunia added a comment - Fixed sequence.group_by test.

            A remainder of the old code:

            static bool
            make_group_fields(JOIN *main_join, JOIN *curr_join)
            

            psergei Sergei Petrunia added a comment - A remainder of the old code: static bool make_group_fields(JOIN *main_join, JOIN *curr_join)

            People

              igor Igor Babaev (Inactive)
              igor Igor Babaev (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.