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

main.func_json_unicode_escape test unpredicatable under view protocol

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • 12.3
    • 12.3
    • JSON, Tests, MTR
    • None

    Description

      Cross reference;

      First output is simple aliasing however the non-equal results is something more substantial

      CURRENT_TEST: main.func_json_unicode_escape
      --- /home/buildbot/src/mysql-test/main/func_json_unicode_escape.result	2026-07-21 05:31:43.000000000 +0000
      +++ /home/buildbot/src/mysql-test/main/func_json_unicode_escape.reject	2026-07-21 06:02:24.596193105 +0000
      @@ -41,21 +41,20 @@
       1
       SELECT JSON_CONTAINS(JSON_QUOTE(JSON_UNQUOTE('"A"')),
       JSON_QUOTE(JSON_UNQUOTE(CAST(0x225C753030343122 AS CHAR))));
      -JSON_CONTAINS(JSON_QUOTE(JSON_UNQUOTE('"A"')),
      -JSON_QUOTE(JSON_UNQUOTE(CAST(0x225C753030343122 AS CHAR))))
      +Name_exp_1
       1
       #
       # More Unicode escape equivalences
       #
       # \u0048\u0065\u006C\u006C\u006F = "Hello"
       SELECT JSON_CONTAINS('"Hello"', '"\\u0048\\u0065\\u006C\\u006C\\u006F"');
      -JSON_CONTAINS('"Hello"', '"\\u0048\\u0065\\u006C\\u006C\\u006F"')
      +Name_exp_1
       1
       SELECT JSON_EQUALS('"Hello"', '"\\u0048\\u0065\\u006C\\u006C\\u006F"');
       JSON_EQUALS('"Hello"', '"\\u0048\\u0065\\u006C\\u006C\\u006F"')
       1
       SELECT JSON_OVERLAPS('"Hello"', '"\\u0048\\u0065\\u006C\\u006C\\u006F"');
      -JSON_OVERLAPS('"Hello"', '"\\u0048\\u0065\\u006C\\u006C\\u006F"')
      +Name_exp_1
       1
       # Mixed literal and escape in the same string: "H\u0065llo" = "Hello"
       SELECT JSON_EQUALS('"Hello"', '"H\\u0065llo"');
      @@ -83,23 +82,23 @@
       #
       SET NAMES utf8mb4;
       SELECT JSON_EQUALS('"😀"', '"\\uD83D\\uDE00"');
      -JSON_EQUALS('"?"', '"\\uD83D\\uDE00"')
      -1
      +JSON_EQUALS('"😀"', '"\\uD83D\\uDE00"')
      +0
       SELECT JSON_CONTAINS('"😀"', '"\\uD83D\\uDE00"');
      -JSON_CONTAINS('"?"', '"\\uD83D\\uDE00"')
      -1
      +JSON_CONTAINS('"😀"', '"\\uD83D\\uDE00"')
      +0
       SELECT JSON_OVERLAPS('"😀"', '"\\uD83D\\uDE00"');
      -JSON_OVERLAPS('"?"', '"\\uD83D\\uDE00"')
      -1
      +JSON_OVERLAPS('"😀"', '"\\uD83D\\uDE00"')
      +0
       SELECT JSON_EQUALS('"😊"', '"\\uD83D\\uDE0A"');
      -JSON_EQUALS('"?"', '"\\uD83D\\uDE0A"')
      -1
      +JSON_EQUALS('"😊"', '"\\uD83D\\uDE0A"')
      +0
       SELECT JSON_CONTAINS('["😀", "hello"]', '["\\uD83D\\uDE00"]');
      -JSON_CONTAINS('["?", "hello"]', '["\\uD83D\\uDE00"]')
      -1
      +JSON_CONTAINS('["😀", "hello"]', '["\\uD83D\\uDE00"]')
      +0
       SELECT JSON_EQUALS('{"emoji": "😀"}', '{"emoji": "\\uD83D\\uDE00"}');
      -JSON_EQUALS('{"emoji": "?"}', '{"emoji": "\\uD83D\\uDE00"}')
      -1
      +JSON_EQUALS('{"emoji": "😀"}', '{"emoji": "\\uD83D\\uDE00"}')
      +0
       #
       # Escaped object keys: \u006B\u0065\u0079 = "key"
       #
      @@ -113,17 +112,17 @@
       # BMP non-ASCII: é = U+00E9, literal UTF-8 vs escape
       #
       SELECT JSON_EQUALS('"é"', '"\\u00E9"');
      -JSON_EQUALS('"é"', '"\\u00E9"')
      -1
      +JSON_EQUALS('"é"', '"\\u00E9"')
      +0
       SELECT JSON_CONTAINS('"é"', '"\\u00E9"');
      -JSON_CONTAINS('"é"', '"\\u00E9"')
      -1
      +JSON_CONTAINS('"é"', '"\\u00E9"')
      +0
       SELECT JSON_OVERLAPS('["é"]', '["\\u00E9"]');
      -JSON_OVERLAPS('["é"]', '["\\u00E9"]')
      -1
      +JSON_OVERLAPS('["é"]', '["\\u00E9"]')
      +0
       #
       # CJK: 中 = U+4E2D
       #
       SELECT JSON_EQUALS('"中"', '"\\u4E2D"');
      -JSON_EQUALS('"中"', '"\\u4E2D"')
      -1
      +JSON_EQUALS('"中"', '"\\u4E2D"')
      +0
       
      Result length mismatch
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              danblack Daniel Black
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 1h
                  1h

                  Git Integration

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