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

crash, race, invalid purge_sys->view in read_view_sees_trx_id

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 10.0.3
    • Fix Version/s: 10.0.4
    • Component/s: None
    • Labels:
      None
    • Environment:
      Win x64, Linux x64

      Description

      Version: '10.0.3-MariaDB'   mariadb.org binary distribution
      [ERROR] mysqld got exception 0xc0000005 ;
      mysqld.exe!read_view_sees_trx_id()[read0read.ic:36]
      mysqld.exe!trx_undo_prev_version_build()[trx0rec.cc:1604]
      mysqld.exe!row_vers_impl_x_locked_low()[row0vers.cc:137]
      mysqld.exe!row_vers_impl_x_locked()[row0vers.cc:299]
      mysqld.exe!lock_sec_rec_some_has_impl()[lock0lock.cc:1695]
      mysqld.exe!lock_rec_convert_impl_to_expl()[lock0lock.cc:5968]
      mysqld.exe!lock_sec_rec_read_check_and_lock()[lock0lock.cc:6214]
      mysqld.exe!row_ins_set_exclusive_rec_lock()[row0ins.cc:1342]
      mysqld.exe!row_ins_scan_sec_index_for_duplicate()[row0ins.cc:1868]
      mysqld.exe!row_ins_index_entry_low()[row0ins.cc:2194]
      mysqld.exe!row_ins_index_entry()[row0ins.cc:2396]
      mysqld.exe!row_ins_index_entry_step()[row0ins.cc:2487]
      mysqld.exe!row_ins()[row0ins.cc:2619]
      mysqld.exe!row_ins_step()[row0ins.cc:2738]
      mysqld.exe!row_insert_for_mysql()[row0mysql.cc:1278]
      mysqld.exe!ha_innobase::write_row()[ha_innodb.cc:6444]
      mysqld.exe!handler::ha_write_row()[handler.cc:5582]
      mysqld.exe!write_record()[sql_insert.cc:1574]
      mysqld.exe!mysql_insert()[sql_insert.cc:963]
      mysqld.exe!mysql_execute_command()[sql_parse.cc:3329]
      mysqld.exe!sp_instr_stmt::exec_core()[sp_head.cc:3191]
      mysqld.exe!sp_lex_keeper::reset_lex_and_exec_core()[sp_head.cc:2983]
      mysqld.exe!sp_instr_stmt::execute()[sp_head.cc:3123]
      mysqld.exe!sp_head::execute()[sp_head.cc:1429]
      mysqld.exe!sp_head::execute_procedure()[sp_head.cc:2184]
      mysqld.exe!mysql_execute_command()[sql_parse.cc:4484]
      mysqld.exe!mysql_parse()[sql_parse.cc:6181]
      mysqld.exe!dispatch_command()[sql_parse.cc:1277]
      mysqld.exe!do_command()[sql_parse.cc:989]
      mysqld.exe!threadpool_process_request()[threadpool_common.cc:224]
      mysqld.exe!io_completion_callback()[threadpool_win.cc:568]
      
      set global innodb_flush_log_at_trx_commit=0;
      drop procedure if exists p1;
      drop table if exists t1;
      create table `t1` (`a` int,`b` tinyint, primary key(`b`),unique key(`b`))engine=innodb;
      delimiter $
      create procedure p1()
      begin
       repeat
         replace into `t1` set `a`=1,`b`=1;
         replace into `t1` set `a`=null,`b`=1;
       until 1=2 end repeat;
      end $
      delimiter ;
      call p1();
      

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            elenst Elena Stepanova added a comment -

            Reproducible as described. It might take a while, so leave it work.

            Hi Jan,

            I'm assigning it to you now, but it might make sense to wait for the InnoDB merge which is currently being done, and fix the bug on the top of it (if it's still reproducible after the merge).

            Show
            elenst Elena Stepanova added a comment - Reproducible as described. It might take a while, so leave it work. Hi Jan, I'm assigning it to you now, but it might make sense to wait for the InnoDB merge which is currently being done, and fix the bug on the top of it (if it's still reproducible after the merge).
            Hide
            jplindst Jan Lindström added a comment -

            Can't repeat. Tested with both debug and product build.

            Show
            jplindst Jan Lindström added a comment - Can't repeat. Tested with both debug and product build.
            Hide
            sbester1 sbester1 added a comment -

            I confirm that on 10.0.2 and 10.0.3 it is repeatable in seconds. on 10.0.4 the problem is no longer repeatable.

            Show
            sbester1 sbester1 added a comment - I confirm that on 10.0.2 and 10.0.3 it is repeatable in seconds. on 10.0.4 the problem is no longer repeatable.

              People

              • Assignee:
                jplindst Jan Lindström
                Reporter:
                sbester1 sbester1
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Time Spent - 2 hours Remaining Estimate - 2 hours
                  2h
                  Logged:
                  Time Spent - 2 hours Remaining Estimate - 2 hours
                  2h