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

Assertion `((cursor)->page_cur.rec) == ((next_page) + page_get_infimum_offset(next_page))' failed

    XMLWordPrintable

Details

    Description

      # mysqld options required for replay: --sql_mode=
      SET GLOBAL innodb_limit_optimistic_insert_debug=7;
      CREATE TABLE t1 (a CHAR(10) unicode NOT NULL, INDEX a (a)) ENGINE=InnoDB;
      INSERT INTO t1 VALUES ('2008-01-03'),('2008-01-03'),(0x0061),(0x0041),(0x00E0),(0x00C0),(0x1EA3),(0x1EA2),(0x00E3),(0x00C3),(0x00E1),(0x00C1),(0x1EA1),(0x1EA0);
      INSERT INTO t1 VALUES ('ü'),(0x98),(0x99),(0x9A),(0x9B),(0x9C),(0x9D),(0x9E),(0x9F),(0xA9D7),(0xC840);
      ALTER TABLE t1 CONVERT TO CHARACTER SET ucs2 collate ucs2_spanish2_ci;
      INSERT INTO t1 VALUES (CONVERT (_ucs2 0x064706450647 USING utf8)),(0xAEDF);
      INSERT INTO t1 (a) VALUES (GEOMFROMTEXT ('LINESTRING (0 0)'));
      

      Leads to:

      10.8.0 1e8bcbd0a0bfa07052e9458830672ea215c8664a (Debug)

      mysqld: /test/10.8_dbg/storage/innobase/btr/btr0btr.cc:2613: rec_t* btr_insert_into_right_sibling(ulint, btr_cur_t*, rec_offs**, mem_heap_t*, const dtuple_t*, ulint, mtr_t*): Assertion `((cursor)->page_cur.rec) == ((next_page) + page_get_infimum_offset(next_page))' failed.
      

      10.8.0 1e8bcbd0a0bfa07052e9458830672ea215c8664a (Debug)

      Core was generated by `/test/MD091221-mariadb-10.8.0-linux-x86_64-dbg/bin/mysqld --no-defaults --sql_m'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      [Current thread is 1 (Thread 0x1467080aa700 (LWP 2936564))]
      (gdb) bt
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #1  0x000014670be79859 in __GI_abort () at abort.c:79
      #2  0x000014670be79729 in __assert_fail_base (fmt=0x14670c00f588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55fc63f53770 "((cursor)->page_cur.rec) == ((next_page) + page_get_infimum_offset(next_page))", file=0x55fc63f50dd8 "/test/10.8_dbg/storage/innobase/btr/btr0btr.cc", line=2613, function=<optimized out>) at assert.c:92
      #3  0x000014670be8af36 in __GI___assert_fail (assertion=assertion@entry=0x55fc63f53770 "((cursor)->page_cur.rec) == ((next_page) + page_get_infimum_offset(next_page))", file=file@entry=0x55fc63f50dd8 "/test/10.8_dbg/storage/innobase/btr/btr0btr.cc", line=line@entry=2613, function=function@entry=0x55fc63f536f8 "rec_t* btr_insert_into_right_sibling(ulint, btr_cur_t*, rec_offs**, mem_heap_t*, const dtuple_t*, ulint, mtr_t*)") at assert.c:101
      #4  0x000055fc638e2f3a in btr_insert_into_right_sibling (mtr=0x1467080a7930, n_ext=0, tuple=0x1466b4021490, heap=<optimized out>, offsets=0x1467080a7318, cursor=0x1467080a73c0, flags=0) at /test/10.8_dbg/storage/innobase/btr/btr0btr.cc:2613
      #5  btr_page_split_and_insert (flags=flags@entry=0, cursor=cursor@entry=0x1467080a73c0, offsets=offsets@entry=0x1467080a7318, heap=heap@entry=0x1467080a7308, tuple=tuple@entry=0x1466b4021490, n_ext=0, mtr=0x1467080a7930) at /test/10.8_dbg/storage/innobase/btr/btr0btr.cc:2724
      #6  0x000055fc638ffc41 in btr_cur_pessimistic_insert (flags=flags@entry=0, cursor=cursor@entry=0x1467080a73c0, offsets=offsets@entry=0x1467080a7318, heap=heap@entry=0x1467080a7308, entry=entry@entry=0x1466b4021490, rec=rec@entry=0x1467080a7370, big_rec=0x1467080a7460, n_ext=<optimized out>, thr=0x1466b4028ee0, mtr=0x1467080a7930) at /test/10.8_dbg/storage/innobase/btr/btr0cur.cc:3762
      #7  0x000055fc637e7e0d in row_ins_sec_index_entry_low (flags=flags@entry=0, mode=mode@entry=33, index=index@entry=0x1466b407e8c8, offsets_heap=<optimized out>, offsets_heap@entry=0x1466b4080d38, heap=heap@entry=0x1466b40811d8, entry=entry@entry=0x1466b4021490, trx_id=<optimized out>, thr=<optimized out>) at /test/10.8_dbg/storage/innobase/row/row0ins.cc:3147
      #8  0x000055fc637e8713 in row_ins_sec_index_entry (index=index@entry=0x1466b407e8c8, entry=entry@entry=0x1466b4021490, thr=thr@entry=0x1466b4028ee0, check_foreign=check_foreign@entry=true) at /test/10.8_dbg/storage/innobase/row/row0ins.cc:3340
      #9  0x000055fc637ea08e in row_ins_index_entry (thr=0x1466b4028ee0, entry=0x1466b4021490, index=0x1466b407e8c8) at /test/10.8_dbg/storage/innobase/row/row0ins.cc:3382
      #10 row_ins_index_entry_step (thr=0x1466b4028ee0, node=0x1466b4028cb8) at /test/10.8_dbg/storage/innobase/row/row0ins.cc:3548
      #11 row_ins (thr=0x1466b4028ee0, node=0x1466b4028cb8) at /test/10.8_dbg/storage/innobase/row/row0ins.cc:3694
      #12 row_ins_step (thr=thr@entry=0x1466b4028ee0) at /test/10.8_dbg/storage/innobase/row/row0ins.cc:3840
      #13 0x000055fc6380e010 in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x1466b406dfa8 "\377", prebuilt=0x1466b40287c8, ins_mode=ROW_INS_NORMAL) at /test/10.8_dbg/storage/innobase/row/row0mysql.cc:1318
      #14 0x000055fc63682b13 in ha_innobase::write_row (this=0x1466b4027f70, record=0x1466b406dfa8 "\377") at /test/10.8_dbg/storage/innobase/handler/ha_innodb.cc:7823
      #15 0x000055fc632cec67 in handler::ha_write_row (this=0x1466b4027f70, buf=0x1466b406dfa8 "\377") at /test/10.8_dbg/sql/handler.cc:7516
      #16 0x000055fc62f6ec8f in write_record (thd=thd@entry=0x1466b4000db8, table=table@entry=0x1466b4071ab8, info=info@entry=0x1467080a8ca0, sink=sink@entry=0x0) at /test/10.8_dbg/sql/sql_insert.cc:2156
      #17 0x000055fc62f7a96e in mysql_insert (thd=thd@entry=0x1466b4000db8, table_list=0x1466b4013ef0, fields=@0x1466b4006078: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1466b40146f8, last = 0x1466b40146f8, elements = 1}, <No data fields>}, values_list=@0x1466b40060c0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1466b4014de8, last = 0x1466b4014de8, elements = 1}, <No data fields>}, update_fields=@0x1466b40060a8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x55fc64608b00 <end_of_list>, last = 0x1466b40060a8, elements = 0}, <No data fields>}, update_values=@0x1466b4006090: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x55fc64608b00 <end_of_list>, last = 0x1466b4006090, elements = 0}, <No data fields>}, duplic=DUP_ERROR, ignore=false, result=0x0) at /test/10.8_dbg/sql/sql_insert.cc:1127
      #18 0x000055fc62fc1214 in mysql_execute_command (thd=thd@entry=0x1466b4000db8, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/10.8_dbg/sql/sql_parse.cc:4563
      #19 0x000055fc62fabc64 in mysql_parse (thd=thd@entry=0x1466b4000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1467080a9400) at /test/10.8_dbg/sql/sql_parse.cc:8028
      #20 0x000055fc62fba8e9 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1466b4000db8, packet=packet@entry=0x1466b400b879 "INSERT INTO t1 (a) VALUES (GEOMFROMTEXT ('LINESTRING (0 0)'))", packet_length=packet_length@entry=61, blocking=blocking@entry=true) at /test/10.8_dbg/sql/sql_class.h:1360
      #21 0x000055fc62fbdd2b in do_command (thd=0x1466b4000db8, blocking=blocking@entry=true) at /test/10.8_dbg/sql/sql_parse.cc:1402
      #22 0x000055fc631371c0 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55fc668b19a8, put_in_cache=put_in_cache@entry=true) at /test/10.8_dbg/sql/sql_connect.cc:1418
      #23 0x000055fc631377c5 in handle_one_connection (arg=arg@entry=0x55fc668b19a8) at /test/10.8_dbg/sql/sql_connect.cc:1312
      #24 0x000055fc635b9de6 in pfs_spawn_thread (arg=0x55fc667c61c8) at /test/10.8_dbg/storage/perfschema/pfs.cc:2201
      #25 0x000014670c387609 in start_thread (arg=<optimized out>) at pthread_create.c:477
      #26 0x000014670bf76293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

      Bug confirmed present in:
      MariaDB: 10.4.22 (dbg), 10.5.13 (dbg), 10.6.5 (dbg), 10.7.1 (dbg), 10.8.0 (dbg)

      Bug (or feature/syntax) confirmed not present in:
      MariaDB: 10.2.41 (dbg), 10.2.41 (opt), 10.3.32 (dbg), 10.3.32 (opt), 10.4.22 (opt), 10.5.13 (opt), 10.6.5 (opt), 10.7.1 (opt), 10.8.0 (opt)

      Attachments

        Issue Links

          Activity

            People

              thiru Thirunarayanan Balathandayuthapani
              ramesh Ramesh Sivaraman
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

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