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

Draft: mariadbd: 10.11-MDEV-29445E+MDEV-36061/storage/innobase/lock/lock0lock.cc:2815: void lock_move_reorganize_page(cons[rr 1603501 132096]t buf_block_t*, const buf_block_t*): Assertion `lock_rec_find_set_bit(lock) == ((ulint)(-1))' failed.

Details

    Description

      origin/10.11-MDEV-29445 58bc76e046c8d9237bf39db0974bda0e2f573d00 2025-02-27T13:04:06+02:00 (10.11.12)
       
      [rr 1603501 132093]mariadbd: /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/lock/lock0lock.cc:2815: void lock_move_reorganize_page(cons[rr 1603501 132096]t buf_block_t*, const buf_block_t*): Assertion `lock_rec_find_set_bit(lock) == ((ulint)(-1))' failed.
      #5  0x00007f602f22881b in __assert_fail_base (fmt=0x7f602f3d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x57af992f27a8 "lock_rec_find_set_bit(lock) == ((ulint)(-1))", 
          file=file@entry=0x57af992efb08 "/data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/lock/lock0lock.cc", line=line@entry=2815, 
          function=function@entry=0x57af992f2698 "void lock_move_reorganize_page(const buf_block_t*, const buf_block_t*)") at ./assert/assert.c:94
      #6  0x00007f602f23b507 in __assert_fail (assertion=0x57af992f27a8 "lock_rec_find_set_bit(lock) == ((ulint)(-1))", 
          file=0x57af992efb08 "/data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/lock/lock0lock.cc", line=2815, function=0x57af992f2698 "void lock_move_reorganize_page(const buf_block_t*, const buf_block_t*)")
          at ./assert/assert.c:103
      #7  0x000057af98ea387a in lock_move_reorganize_page (block=block@entry=0x7f602c80cbf0, oblock=oblock@entry=0x7f602c817de0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/lock/lock0lock.cc:2815
      #8  0x000057af9900255f in btr_page_reorganize_low (cursor=cursor@entry=0x7f6006ffe710, mtr=mtr@entry=0x7f6006ffeeb0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/btr/btr0btr.cc:1557
      #9  0x000057af99002bc2 in btr_page_reorganize_block (z_level=<optimized out>, block=block@entry=0x7f602c80cbf0, index=index@entry=0x7f5fec5a6be0, mtr=mtr@entry=0x7f6006ffeeb0)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/btr/btr0btr.cc:1711
      #10 0x000057af99002d01 in btr_can_merge_with_page (cursor=cursor@entry=0x7f6006ffede0, page_no=page_no@entry=117, merge_block=merge_block@entry=0x7f6006ffe7f8, mtr=mtr@entry=0x7f6006ffeeb0)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/btr/btr0btr.cc:5515
      #11 0x000057af99008843 in btr_compress (cursor=cursor@entry=0x7f6006ffede0, adjust=adjust@entry=false, mtr=mtr@entry=0x7f6006ffeeb0)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/btr/btr0btr.cc:3873
      #12 0x000057af99019990 in btr_cur_compress_if_useful (cursor=cursor@entry=0x7f6006ffede0, adjust=adjust@entry=false, mtr=mtr@entry=0x7f6006ffeeb0)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/btr/btr0cur.cc:4585
      #13 0x000057af99024137 in btr_cur_pessimistic_delete (err=err@entry=0x7f6006ffeddc, has_reserved_extents=has_reserved_extents@entry=0, cursor=cursor@entry=0x7f6006ffede0, flags=flags@entry=0, 
          rollback=rollback@entry=false, mtr=mtr@entry=0x7f6006ffeeb0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/btr/btr0cur.cc:5048
      #14 0x000057af98f88f70 in row_purge_remove_sec_if_poss_tree (node=node@entry=0x57af9c409ba0, index=index@entry=0x7f5fec5a6be0, entry=entry@entry=0x57af9c6d59c0, page_max_trx_id=page_max_trx_id@entry=192)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/row/row0purge.cc:862
      #15 0x000057af98f89b26 in row_purge_remove_sec_if_poss (node=node@entry=0x57af9c409ba0, index=0x7f5fec5a6be0, entry=0x57af9c6d59c0)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/row/row0purge.cc:1030
      #16 0x000057af98f8a3c0 in row_purge_upd_exist_or_extern_func (thr=thr@entry=0x57af9c4099c0, node=node@entry=0x57af9c409ba0, undo_rec=undo_rec@entry=0x7f602c946c89 "\017\330\f6\022")
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/row/row0purge.cc:1196
      #17 0x000057af98f8a897 in row_purge_record_func (node=node@entry=0x57af9c409ba0, undo_rec=undo_rec@entry=0x7f602c946c89 "\017\330\f6\022", thr=thr@entry=0x57af9c4099c0, updated_extern=false)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/row/row0purge.cc:1587
      #18 0x000057af98f8ad99 in row_purge (node=node@entry=0x57af9c409ba0, undo_rec=undo_rec@entry=0x7f602c946c89 "\017\330\f6\022", thr=thr@entry=0x57af9c4099c0)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/row/row0purge.cc:1626
      #19 0x000057af98f8adf8 in row_purge_step (thr=thr@entry=0x57af9c4099c0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/row/row0purge.cc:1689
      #20 0x000057af98f28ad5 in que_thr_step (thr=thr@entry=0x57af9c4099c0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/que/que0que.cc:553
      #21 0x000057af98f28cb6 in que_run_threads_low (thr=thr@entry=0x57af9c4099c0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/que/que0que.cc:609
      #22 0x000057af98f28d77 in que_run_threads (thr=thr@entry=0x57af9c4099c0) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/que/que0que.cc:629
      #23 0x000057af98fbce06 in srv_task_execute () at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/srv/srv0srv.cc:1427
      #24 0x000057af98fbcf94 in srv_purge_worker_task_low () at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/srv/srv0srv.cc:1558
      #25 0x000057af98fcc8f5 in trx_purge (n_tasks=<optimized out>, n_tasks@entry=4, history_size=<optimized out>) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/trx/trx0purge.cc:1436
      #26 0x000057af98fbd987 in purge_coordinator_state::do_purge (this=this@entry=0x57af9a567250 <purge_state>) at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/srv/srv0srv.cc:1493
      #27 0x000057af98fbd44b in purge_coordinator_callback () at /data/Server/10.11-MDEV-29445E+MDEV-36061/storage/innobase/srv/srv0srv.cc:1577
      #28 0x000057af990fb9c5 in tpool::task_group::execute (this=0x57af9a5670a0 <purge_coordinator_task_group>, t=t@entry=0x57af9a567000 <purge_coordinator_task>)
          at /data/Server/10.11-MDEV-29445E+MDEV-36061/tpool/task_group.cc:70
      #29 0x000057af990fba6b in tpool::task::execute (this=0x57af9a567000 <purge_coordinator_task>) at /data/Server/10.11-MDEV-29445E+MDEV-36061/tpool/task.cc:32
      #30 0x000057af990f9193 in tpool::thread_pool_generic::worker_main (this=0x57af9c370770, thread_var=0x57af9c381640) at /data/Server/10.11-MDEV-29445E+MDEV-36061/tpool/tpool_generic.cc:574
      #31 0x000057af990fb6f1 in std::__invoke_impl<void, void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> (__f=<optimized out>, __t=<optimized out>)
          at /usr/include/c++/13/bits/invoke.h:74
      #32 0x000057af990fb70f in std::__invoke<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> (__fn=<optimized out>) at /usr/include/c++/13/bits/invoke.h:90
      --Type <RET> for more, q to quit, c to continue without paging--c
      #33 std::thread::_Invoker<std::tuple<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> >::_M_invoke<0ul, 1ul, 2ul> (this=<optimized out>)
          at /usr/include/c++/13/bits/std_thread.h:292
      #34 std::thread::_Invoker<std::tuple<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> >::operator() (this=<optimized out>)
          at /usr/include/c++/13/bits/std_thread.h:299
      #35 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (tpool::thread_pool_generic::*)(tpool::worker_data*), tpool::thread_pool_generic*, tpool::worker_data*> > >::_M_run (this=<optimized out>)
          at /usr/include/c++/13/bits/std_thread.h:244
      #36 0x00007f602f6eabb4 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
      #37 0x00007f602f29ca94 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
      #38 0x00007f602f329a34 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
       
      sdp:/data/results/1740661710/TBR-853$ _RR_TRACE_DIR=./1/rr rr replay --mark-stdio
       
      The test fiddles aside of DDL and DML with log_write_ahead_size und log_size.
      Per Marko: The bug might affect other MariaDB versions too.
       
      RQG
      ===
      git clone https://github.com/mleich1/rqg 
      # GIT_SHOW: HEAD -> master, origin/master, origin/HEAD cb2ddc8316c26d7daefd9b6ec892054cef376369 2025-02-26T12:16:35+01:00
      # rqg.pl  : Version 4.5.0 (2023-12)
      #
      # $RQG_HOME/rqg.pl \
      # --gendata=conf/engines/many_indexes.zz \
      # --max_gd_duration=900 \
      # --grammar=conf/engines/many_indexes.yy \
      # --reporters=Mariabackup_linux \
      # --mysqld=--loose-innodb-log-file-size=200M \
      # --mysqld=--loose-innodb_lock_schedule_algorithm=fcfs \
      # --mysqld=--loose-idle_write_transaction_timeout=0 \
      # --mysqld=--loose-idle_transaction_timeout=0 \
      # --mysqld=--loose-idle_readonly_transaction_timeout=0 \
      # --mysqld=--connect_timeout=60 \
      # --mysqld=--interactive_timeout=28800 \
      # --mysqld=--slave_net_timeout=60 \
      # --mysqld=--net_read_timeout=30 \
      # --mysqld=--net_write_timeout=60 \
      # --mysqld=--loose-table_lock_wait_timeout=50 \
      # --mysqld=--wait_timeout=28800 \
      # --no_mask \
      # --queries=10000000 \
      # --seed=random \
      # --reporters=None \
      # --reporters=ErrorLog \
      # --reporters=Deadlock \
      # --validators=None \
      # --mysqld=--log_output=none \
      # --mysqld=--log_bin_trust_function_creators=1 \
      # --mysqld=--loose-debug_assert_on_not_freed_memory=0 \
      # --engine=InnoDB \
      # --restart_timeout=240 \
      # --mysqld=--plugin-load-add=file_key_management.so \
      # --mysqld=--loose-file-key-management-filename=$RQG_HOME/conf/mariadb/encryption_keys.txt \
      # --mysqld=--plugin-load-add=provider_lzo.so \
      # --mysqld=--plugin-load-add=provider_bzip2.so \
      # --mysqld=--plugin-load-add=provider_lzma.so \
      # --mysqld=--plugin-load-add=provider_snappy.so \
      # --mysqld=--plugin-load-add=provider_lz4.so \
      # --mysqld=--loose-innodb_compression_level=1 \
      # --duration=300 \
      # --mysqld=--loose-innodb_fatal_semaphore_wait_threshold=300 \
      # --redefine=conf/mariadb/redefine_innodb_log_write_ahead_size.yy \
      # --redefine=conf/mariadb/redefine_innodb_log_size_dynamic.yy \
      # --mysqld=--lock-wait-timeout=15 \
      # --mysqld=--innodb-lock-wait-timeout=10 \
      # --mysqld=--loose-innodb_fast_shutdown=1 \
      # --mysqld=--sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION \
      # --mysqld=--innodb_file_per_table=1 \
      # --mysqld=--loose-innodb_read_only_compressed=OFF \
      # --mysqld=--loose-innodb-sync-debug \
      # --mysqld=--innodb_stats_persistent=on \
      # --mysqld=--innodb_adaptive_hash_index=off \
      # --mysqld=--innodb_random_read_ahead=OFF \
      # --mysqld=--log-bin \
      # --mysqld=--sync-binlog=1 \
      # --mysqld=--loose-innodb_evict_tables_on_commit_debug=off \
      # --threads=9 \
      # --rr=Extended \
      # --rr_options=--wait \
      # --mysqld=--innodb_undo_log_truncate=ON \
      # --mysqld=--loose_innodb_change_buffering=deletes \
      # --mysqld=--innodb_undo_tablespaces=0 \
      # --mysqld=--innodb_rollback_on_timeout=OFF \
      # --mysqld=--innodb_page_size=4K \
      # --mysqld=--innodb-buffer-pool-size=5M \
      # --vardir_type=slow \
      # <local settings>
      
      

      Attachments

        Activity

          No workflow transitions have been executed yet.

          People

            mleich Matthias Leich
            mleich Matthias Leich
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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