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

Incorrect COUNT result when subquery includes LENGTHB(t0.c0) > (t0.c0 IN (false))

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • 12.2.2
    • None
    • None
    • None

    Description

      Hi, I found a logic bug in MariaDB 12.2.2.
      A query that should have returned `0` actually returned `1`.

      CREATE TABLE t0(c0 VARCHAR(100));
      CREATE TABLE t1(c0 SMALLINT);
      INSERT INTO t0 VALUES ('A'),('a ');
      INSERT INTO t1 VALUES (1);
      SELECT COUNT(CASE WHEN EXISTS (SELECT 1 FROM t1 WHERE t1.c0 IS NOT NULL AND LENGTHB(t0.c0) > (t0.c0 IN (false))) THEN 1 END) FROM t0  WHERE NOT EXISTS (SELECT 1 FROM t1 WHERE t1.c0 IS NOT NULL AND LENGTHB(t0.c0) > (t0.c0 IN (false))); -- expect 0, actually return 1
       
      SELECT COUNT(CASE WHEN EXISTS (SELECT 1 FROM t1 WHERE t1.c0 IS NOT NULL) THEN 1 END) FROM t0  WHERE NOT EXISTS (SELECT 1 FROM t1 WHERE t1.c0 IS NOT NULL); -- expect 0, actually return 0
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            jinhui lai jinhui lai
            Votes:
            0 Vote for this issue
            Watchers:
            1 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.