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

Crash with PREPARE + SP out parameter + literal

    XMLWordPrintable

    Details

    • Sprint:
      10.2.4-1

      Description

      This script:

      DELIMITER $$
      CREATE OR REPLACE PROCEDURE p1(OUT a INT)
      BEGIN
        SET a= 10;
      END;
      $$
      DELIMITER ;
      PREPARE stmt FROM 'CALL p1(?)';
      EXECUTE stmt USING 10;
      

      crashes with the following stack trace:

      #0  0x00007ffff5994a28 in raise () from /lib64/libc.so.6
      #1  0x00007ffff599662a in abort () from /lib64/libc.so.6
      #2  0x00007ffff598d227 in __assert_fail_base () from /lib64/libc.so.6
      #3  0x00007ffff598d2d2 in __assert_fail () from /lib64/libc.so.6
      #4  0x0000555555a2a58c in Protocol_text::send_out_parameters (
          this=0x7ffeb1016600, sp_params=0x7ffeb110def8)
          at /home/bar/maria-git/server.10.2/sql/protocol.cc:1326
      #5  0x0000555555b1a2fd in Prepared_statement::execute (this=0x7ffeb101da70, 
          expanded_query=0x7ffff7f2f0c0, open_cursor=false)
          at /home/bar/maria-git/server.10.2/sql/sql_prepare.cc:4698
      #6  0x0000555555b184c8 in Prepared_statement::execute_loop (
          this=0x7ffeb101da70, expanded_query=0x7ffff7f2f0c0, open_cursor=false, 
          packet=0x0, packet_end=0x0)
          at /home/bar/maria-git/server.10.2/sql/sql_prepare.cc:4083
      #7  0x0000555555b16246 in mysql_sql_stmt_execute (thd=0x7ffeb1016070)
          at /home/bar/maria-git/server.10.2/sql/sql_prepare.cc:3193
      #8  0x0000555555aef38f in mysql_execute_command (thd=0x7ffeb1016070)
          at /home/bar/maria-git/server.10.2/sql/sql_parse.cc:3445
      #9  0x0000555555afcf83 in mysql_parse (thd=0x7ffeb1016070, 
          rawbuf=0x7ffeb1063088 "EXECUTE stmt USING 10", length=21, 
          parser_state=0x7ffff7f2fd20, is_com_multi=false, is_next_command=false)
      

      mysqld: /data/src/10.2/sql/protocol.cc:1326: virtual Protocol_text::send_out_parameters(List<Item_param>*): Assertion `0' failed.
      170112 12:44:08 [ERROR] mysqld got signal 6 ;
      

        Attachments

          Activity

            People

            Assignee:
            bar Alexander Barkov
            Reporter:
            bar Alexander Barkov
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: