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

[FATAL] InnoDB: Over 95 percent of the buffer pool is occupied by lock heaps or the adaptive hash index! Check that your transactions do not set too many row locks, or review if innodb_buffer_pool_size=4M could be bigger

    XMLWordPrintable

Details

    • Can result in hang or crash

    Description

      Could be a hang or crash while shrinking innodb buffer pool which is leading to SIGABRT in buf_LRU_check_size_of_non_data_objects in debug build

      Leads to :-

      10.11 origin/10.11 77a3d7a985e6a494b8e4b7b5ccd634602a9a7e1f

      Thread 3 received signal SIGABRT, Aborted.
      [Switching to Thread 2377167.2396942]
      __pthread_kill_implementation (no_tid=0, signo=6, threadid=132147880216128) at ./nptl/pthread_kill.c:44
      44      ./nptl/pthread_kill.c: No such file or directory.
      (rr) set print addr off
      (rr) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=132147880216128) at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=132147880216128) at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=132147880216128, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
      #3  __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
      #4  __GI_abort () at ./stdlib/abort.c:79
      #5  buf_LRU_check_size_of_non_data_objects () at /data/Server/10.11_new/storage/innobase/buf/buf0lru.cc:293
      #6  buf_LRU_get_free_block (have_mutex=have_mutex@entry=false) at /data/Server/10.11_new/storage/innobase/buf/buf0lru.cc:353
      #7  mem_heap_create_block_func (heap=heap@entry=, n=3896, file_name=file_name@entry="0trx.cc", line=187, type=1) at /data/Server/10.11_new/storage/innobase/mem/mem0mem.cc:295
      #8  mem_heap_add_block (heap=heap@entry=, n=n@entry=104) at /data/Server/10.11_new/storage/innobase/mem/mem0mem.cc:379
      #9  mem_heap_alloc (heap=, n=n@entry=104) at /data/Server/10.11_new/storage/innobase/include/mem0mem.inl:193
      #10 lock_rec_create_low (c_lock=c_lock@entry=, type_mode=type_mode@entry=2, page_id=..., page_id@entry=..., page=page@entry="", heap_no=heap_no@entry=1, index=index@entry=, trx=,
          holds_trx_mutex=true) at /data/Server/10.11_new/storage/innobase/lock/lock0lock.cc:1408
      #11 lock_rec_add_to_queue (type_mode=type_mode@entry=2, cell=..., id=..., id@entry=..., page="", heap_no=heap_no@entry=1, index=, trx=, caller_owns_trx_mutex=true)
          at /data/Server/10.11_new/storage/innobase/lock/lock0lock.cc:1676
      #12 lock_rec_move (receiver_cell=..., receiver=..., receiver_id=..., receiver_id@entry=..., donator_cell=..., donator_id=..., donator_id@entry=...,
          receiver_heap_no=receiver_heap_no@entry=1, donator_heap_no=<optimized out>) at /data/Server/10.11_new/storage/innobase/lock/lock0lock.cc:2633
      #13 lock_update_merge_left (left=..., orig_pred=orig_pred@entry="", right=right@entry=...) at /data/Server/10.11_new/storage/innobase/include/lock0lock.h:1001
      #14 btr_compress (cursor=cursor@entry=, adjust=adjust@entry=false, mtr=mtr@entry=) at /data/Server/10.11_new/storage/innobase/btr/btr0btr.cc:3996
      #15 btr_cur_compress_if_useful (cursor=cursor@entry=, adjust=adjust@entry=false, mtr=mtr@entry=) at /data/Server/10.11_new/storage/innobase/btr/btr0cur.cc:4592
      #16 btr_cur_pessimistic_delete (err=err@entry=, has_reserved_extents=has_reserved_extents@entry=0, cursor=cursor@entry=, flags=flags@entry=0, rollback=rollback@entry=true,
          mtr=mtr@entry=) at /data/Server/10.11_new/storage/innobase/btr/btr0cur.cc:5055
      #17 row_undo_ins_remove_clust_rec (node=node@entry=) at /data/Server/10.11_new/storage/innobase/row/row0uins.cc:218
      #18 row_undo_ins (node=node@entry=, thr=thr@entry=) at /data/Server/10.11_new/storage/innobase/row/row0uins.cc:613
      #19 row_undo (node=node@entry=, thr=thr@entry=) at /data/Server/10.11_new/storage/innobase/row/row0undo.cc:401
      #20 row_undo_step (thr=thr@entry=) at /data/Server/10.11_new/storage/innobase/row/row0undo.cc:442
      #21 que_thr_step (thr=thr@entry=) at /data/Server/10.11_new/storage/innobase/que/que0que.cc:551
      #22 que_run_threads_low (thr=thr@entry=) at /data/Server/10.11_new/storage/innobase/que/que0que.cc:609
      #23 que_run_threads (thr=) at /data/Server/10.11_new/storage/innobase/que/que0que.cc:629
      #24 trx_t::rollback_low (this=this@entry=, savept=savept@entry=) at /data/Server/10.11_new/storage/innobase/trx/trx0roll.cc:116
      #25 trx_rollback_for_mysql (trx=trx@entry=) at /data/Server/10.11_new/storage/innobase/trx/trx0roll.cc:213
      #26 innobase_rollback (thd=<optimized out>, rollback_trx=true) at /data/Server/10.11_new/storage/innobase/handler/ha_innodb.cc:4681
      #27 ha_rollback_trans (thd=thd@entry=, all=all@entry=false) at /data/Server/10.11_new/sql/handler.cc:2316
      #28 trans_rollback_stmt (thd=thd@entry=) at /data/Server/10.11_new/sql/transaction.cc:570
      #29 mysql_execute_command (thd=thd@entry=, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /data/Server/10.11_new/sql/sql_parse.cc:6217
      #30 mysql_parse (thd=thd@entry=, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=) at /data/Server/10.11_new/sql/sql_parse.cc:8180
      #31 dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=,
          packet=packet@entry="INSERT INTO `table400_innodb_int_autoinc` SELECT * FROM `table400_innodb_int_autoinc` /* E_R Thread9 QNO 2013 CON_ID 23 */ ",
          packet_length=packet_length@entry=123, blocking=blocking@entry=true) at /data/Server/10.11_new/sql/sql_parse.cc:1906
      #32 do_command (thd=thd@entry=, blocking=blocking@entry=true) at /data/Server/10.11_new/sql/sql_parse.cc:1419
      #33 do_handle_one_connection (connect=<optimized out>, connect@entry=, put_in_cache=put_in_cache@entry=true) at /data/Server/10.11_new/sql/sql_connect.cc:1386
      #34 handle_one_connection (arg=) at /data/Server/10.11_new/sql/sql_connect.cc:1298
      --Type <RET> for more, q to quit, c to continue without paging--c
      #35 start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #36 clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
      

      RR trace is present on pluto:-
      /data/results/1757400498/TBR-1806

      Attachments

        Activity

          People

            saahil Saahil Alam
            saahil Saahil Alam
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.