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

MySQL Bug#12546960 - 60993: NAME QUOTED WITH QUOTE INSTEAD OF BACKTICK GIVES NO SYNTAX ERROR

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 10.0.10
    • Fix Version/s: 10.0
    • Component/s: None
    • Labels:
      None

      Description

          ------------------------------------------------------------
          revno: 4471.1.3
          committer: Alexander Nozdrin <alexander.nozdrin@oracle.com>
          branch nick: 5.6-bug14788443
          timestamp: Wed 2012-10-24 18:17:36 +0400
          message:
            Patch for Bug#14788443: ASSERTION FAILED: M_CPP_BUF <= PTR &&
            PTR <= M_CPP_BUF + M_BUF_LENGTH.
       
            The bug was a regression in 5.6.3 introduced by a patch for 12546960
            (revid: magne.mahre@oracle.com-20110725105406-kwpzpksmrsjgeloe).
       
            The problem was that in case of syntax error, the lexer was left in
            non-consistent state (Lex_input_stream::m_cpp_ptr was poiting
            to after-ending-zero byte).
       
            The fix is to return (unget) one character to the Lex_input_stream in
            case of syntax error.
      ------------------------------------------------------------
      revno: 3298
      committer: Magne Mahre <magne.mahre@oracle.com>
      branch nick: mysql-trunk-12546960
      timestamp: Mon 2011-07-25 12:54:06 +0200
      message:
        Bug#12546960 - 60993: NAME QUOTED WITH QUOTE INSTEAD OF BACKTICK
                       GIVES NO SYNTAX ERROR
       
        If a statement ended with mismatched quotes, the server would
        accept the statement and present whatever was after the
        initial quote as a text string.
       
        In the particular bug report, the string was started with a
        backtick.  Since the concluding quote was a regular 'tick',
        it was not detected as and ending quote, so the tick was
        added to the string.
       
        The bug was not present when used interactively from the
        mysql client, nor from mysqltest, as these tools do some
        rudimentary quotes checking before sending the statement
        to the server.
       
        The fix introduces a check to verify that the statement
        does not end while still expecting an end quote.  If so -
        a parser error is returned.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              Unassigned
              Reporter:
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated: