안녕하세요 마리아DB 오류 관련 도움 요청드립니다.
저희 개발자분이 특정 인덱스 추가후에 아래와같은 오류가발생하며
DB가 1초마다 재시작되는데 원인을 모르겠습니다.
innodb page size는 기본 16k로 되어있습니다.
아시는분 계실까요? ^^;;
2022-05-03 12:50:56 0 [ERROR] [FATAL] InnoDB: Page old data size 15938 new data size 12873, page old max ins size 7 new max ins size 3072
220503 12:50:56 [ERROR] mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.
Server version: 10.6.5-MariaDB
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=0
max_threads=1002
thread_count=1
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 2337489 K bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x0 thread_stack 0x49000
2022-05-03 12:50:56 0 [Note] /usr/local/mysql/bin/mariadbd: ready for connections.
Version: '10.6.5-MariaDB' socket: '/tmp/mysql.sock' port: 3306 Source distribution
2022-05-03 12:50:56 0 [Note] InnoDB: Buffer pool(s) load completed at 220503 12:50:56
mysys/stacktrace.c:213(my_print_stacktrace)[0x562a27141e2e]
sql/signal_handler.cc:226(handle_fatal_signal)[0x562a26c80155]
sigaction.c:0(__restore_rt)[0x7f1ccbf2cc20]
:0(__GI_raise)[0x7f1ccb05937f]
:0(__GI_abort)[0x7f1ccb043db5]
ut/ut0ut.cc:519(ib::fatal::~fatal() [clone .cold.27])[0x562a26968829]
btr/btr0btr.cc:1261(btr_page_reorganize_low)[0x562a26968e1a]
btr/btr0btr.cc:1552(btr_page_reorganize(page_cur_t*, dict_index_t*, mtr_t*))[0x562a27021ab7]
include/dict0mem.h:1806(ibuf_insert_to_index_page_low(dtuple_t const*, buf_block_t*, dict_index_t*, unsigned short**, mem_block_info_t*, mtr_t*, page_cur_t*))[0x562a26f49242]
ibuf/ibuf0ibuf.cc:3834(ibuf_insert_to_index_page)[0x562a26f4d121]
buf/buf0buf.cc:2959(buf_page_get_low(page_id_t, unsigned long, unsigned long, buf_block_t*, unsigned long, mtr_t*, dberr_t*, bool))[0x562a27050469]
btr/btr0cur.cc:1611(btr_cur_search_to_nth_level_func(dict_index_t*, unsigned long, dtuple_t const*, page_cur_mode_t, unsigned long, btr_cur_t*, srw_lock_impl<true>*, mtr_t*, unsigned long))[0x562a27038663]
include/btr0pcur.ic:446(btr_pcur_open_low(dict_index_t*, unsigned long, dtuple_t const*, page_cur_mode_t, unsigned long, btr_pcur_t*, unsigned long, mtr_t*) [clone .constprop.40])[0x562a26fd1f43]
row/row0row.cc:1306(row_search_index_entry(dict_index_t*, dtuple_t const*, unsigned long, btr_pcur_t*, mtr_t*))[0x562a26fd1fe5]
row/row0umod.cc:785(row_undo_mod_del_unmark_sec_and_undo_update(unsigned long, que_thr_t*, dict_index_t*, dtuple_t*))[0x562a270ddba7]
row/row0umod.cc:1178(row_undo_mod_upd_exist_sec)[0x562a270defdd]
row/row0undo.cc:413(row_undo)[0x562a26fdd92b]
que/que0que.cc:651(que_thr_step)[0x562a26f95a38]
trx/trx0roll.cc:605(trx_rollback_active(trx_t*))[0x562a2700288a]
trx/trx0roll.cc:741(trx_rollback_recovered(bool))[0x562a27003cb2]
trx/trx0roll.cc:787(trx_rollback_all_recovered(void*))[0x562a26966b78]
4개의 답변이 있습니다.
감사합니다. 인덱스 제거하고 해당 테이블 drop 이후 정상화 되었습니다 ㅠㅠ
인덱스 추가로 인한문제 같아 보이진 않아 보입니다.
인덱스 제거 해보시고
인덱스 생성 스크립트스롹인 하신 후에 다시 생성 해보시기 바랍니다
프로그램 설치 등 다른 부분도 확인 해보시고요.
예전에 1분마다 재시작하는 경우가 있었는데. 다른 프로그램에서 DB를 재시작하게 되었던 기억이 있습니다.
최근에 설치한 프로그램이 있으면 삭제해보시기 바랍니다.
생성한 인덱스를 제거하고 어떤지를 확인해 보고...
그래도 해결되지 않는다면 백업으로 복구해서 사용하는게 맞지 않을까 싶어 보이네요.
Test 서버를 만들어서 문제 없었던 상태의 백업 데이터를 복구해서 적용하려는 작업을 시도해 보고 이상 없을때 업무 서버에 적용하는게 좋을 것 같아 보이고요.