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

Wrong result with table elimination combined with not_null_range_scan

    XMLWordPrintable

Details

    Description

      The following tests shows we get different results depending on the setting of
      'not_null_range_scan':

      CREATE TABLE t1 (a INT, b INT) ENGINE=MyISAM;
      INSERT INTO t1 VALUES (10,1),(null,2);
      CREATE TABLE t2 (pk INT PRIMARY KEY) ENGINE=MyISAM;
      INSERT INTO t2 VALUES (1),(2);
      SET optimizer_switch= 'not_null_range_scan=on';
      SELECT t1.b FROM t1 LEFT JOIN t2 ON t1.a = t2.pk WHERE t1.a IS NULL ORDER BY t1.b;
      SET optimizer_switch= 'not_null_range_scan=off';
      SELECT t1.b FROM t1 LEFT JOIN t2 ON t1.a = t2.pk WHERE t1.a IS NULL ORDER BY t1.b;

      The first test returns 0 rows and the second test 1 row.

      Attachments

        Activity

          People

            monty Michael Widenius
            monty Michael Widenius
            Votes:
            0 Vote for this issue
            Watchers:
            1 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.