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

Unexpected Results by outer_join_with_cache

Details

    • Bug
    • Status: Confirmed (View Workflow)
    • Major
    • Resolution: Unresolved
    • 10.4.31, 11.1.2
    • 11.1(EOL)
    • Optimizer
    • None
    • docker run -it -p 3307:3306 -e MARIADB_ROOT_PASSWORD=root mariadb:latest

    Description

      The same query returns different results under different outer_join_with_cache:

      CREATE TABLE t0(c0 CHAR);
      CREATE TABLE t2(c0 CHAR);
      INSERT INTO t0 VALUES ('a'), (''), ('');
      INSERT INTO t2 VALUES ('b'), ('');
       
      SET SESSION optimizer_switch = 'outer_join_with_cache=on';
      SELECT t2.c0 FROM t2 LEFT JOIN t0 ON (4 RLIKE t0.c0);  -- {b}, { }
      SET SESSION optimizer_switch = 'outer_join_with_cache=off';
      SELECT t2.c0 FROM t2 LEFT JOIN t0 ON (4 RLIKE t0.c0);  -- {b}, { }, { }
      

      Attachments

        Activity

          danblack Daniel Black added a comment -

          10.4-922db0642b6321ece41adb3232c1616812143573

          MariaDB [test]> SET STATEMENT optimizer_switch = 'outer_join_with_cache=off' FOR SELECT t2.c0 FROM t2 LEFT JOIN t0 ON (4 RLIKE t0.c0);
          +------+
          | c0   |
          +------+
          | b    |
          |      |
          |      |
          +------+
          3 rows in set (0.001 sec)
           
          MariaDB [test]> SET STATEMENT optimizer_switch = 'outer_join_with_cache=on' FOR SELECT t2.c0 FROM t2 LEFT JOIN t0 ON (4 RLIKE t0.c0);
          +------+
          | c0   |
          +------+
          | b    |
          |      |
          +------+
          2 rows in set (0.001 sec)
           
          MariaDB [test]> select version();
          +-----------------------------------------+
          | version()                               |
          +-----------------------------------------+
          | 10.4.31-MariaDB-1:10.4.31+maria~ubu2004 |
          +-----------------------------------------+
          1 row in set (0.000 sec)
          

          danblack Daniel Black added a comment - 10.4-922db0642b6321ece41adb3232c1616812143573 MariaDB [test]> SET STATEMENT optimizer_switch = 'outer_join_with_cache=off' FOR SELECT t2.c0 FROM t2 LEFT JOIN t0 ON (4 RLIKE t0.c0); +------+ | c0 | +------+ | b | | | | | +------+ 3 rows in set (0.001 sec)   MariaDB [test]> SET STATEMENT optimizer_switch = 'outer_join_with_cache=on' FOR SELECT t2.c0 FROM t2 LEFT JOIN t0 ON (4 RLIKE t0.c0); +------+ | c0 | +------+ | b | | | +------+ 2 rows in set (0.001 sec)   MariaDB [test]> select version(); +-----------------------------------------+ | version() | +-----------------------------------------+ | 10.4.31-MariaDB-1:10.4.31+maria~ubu2004 | +-----------------------------------------+ 1 row in set (0.000 sec)

          People

            psergei Sergei Petrunia
            bajinsheng Jinsheng Ba
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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