Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.3.7, 10.3.12, 10.4(EOL)
Description
Following error output is generated during execution of an "normal" update query and leads to a crash of mariadb master (master-master replication).
Occurrence: 3 times on two different database tables, not reproducible so far.
2019-01-29 13:24:41 434826568 [ERROR] InnoDB: Page old data size 15175 new data size 15391, page old max ins size 1063 new max ins size 847 |
2019-01-29 13:24:41 434826568 [ERROR] InnoDB: Submit a detailed bug report to https://jira.mariadb.org/ |
2019-01-29 13:24:41 0x7f0118195700 InnoDB: Assertion failure in file /home/buildbot/buildbot/build/mariadb-10.3.7/storage/innobase/btr/btr0cur.cc line 4308 |
InnoDB: Failing assertion: rec
|
InnoDB: We intentionally generate a memory trap.
|
InnoDB: Submit a detailed bug report to https://jira.mariadb.org/ |
InnoDB: If you get repeated assertion failures or crashes, even
|
InnoDB: immediately after the mysqld startup, there may be
|
InnoDB: corruption in the InnoDB tablespace. Please refer to
|
InnoDB: https://mariadb.com/kb/en/library/xtradbinnodb-recovery-modes/ |
InnoDB: about forcing recovery.
|
190129 13:24:41 [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.3.7-MariaDB-1:10.3.7+maria~xenial-log |
key_buffer_size=8589934592 |
read_buffer_size=2097152 |
max_used_connections=200 |
max_threads=242 |
thread_count=138 |
It is possible that mysqld could use up to
|
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 24749309 K bytes of memory |
Hope that's ok; if not, decrease some variables in the equation. |
|
Thread pointer: 0x7efdec0009a8 |
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 = 0x7f0118194cf8 thread_stack 0x30000 |
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x55f49174003e] |
/usr/sbin/mysqld(handle_fatal_signal+0x347)[0x55f4911ec607] |
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7f045d869390] |
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x38)[0x7f045ce38428] |
/lib/x86_64-linux-gnu/libc.so.6(abort+0x16a)[0x7f045ce3a02a] |
/usr/sbin/mysqld(+0x49ee74)[0x55f490f39e74] |
/usr/sbin/mysqld(+0xb0a1aa)[0x55f4915a51aa] |
/usr/sbin/mysqld(+0xa8c949)[0x55f491527949] |
/usr/sbin/mysqld(+0xa91a1d)[0x55f49152ca1d] |
/usr/sbin/mysqld(+0xa92c4f)[0x55f49152dc4f] |
/usr/sbin/mysqld(+0xa5fed4)[0x55f4914faed4] |
/usr/sbin/mysqld(+0x99f3ff)[0x55f49143a3ff] |
/usr/sbin/mysqld(_ZN7handler13ha_update_rowEPKhS1_+0x122)[0x55f4911f7072] |
/usr/sbin/mysqld(_Z12mysql_updateP3THDP10TABLE_LISTR4ListI4ItemES6_PS4_jP8st_ordery15enum_duplicatesbPySB_+0x16b1)[0x55f4910b05d1] |
/usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x2478)[0x55f491014058] |
/usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_statebb+0x21a)[0x55f49101a77a] |
/usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcjbb+0x1c23)[0x55f49101d0c3] |
/usr/sbin/mysqld(_Z10do_commandP3THD+0x13c)[0x55f49101db7c] |
/usr/sbin/mysqld(_Z24do_handle_one_connectionP7CONNECT+0x252)[0x55f4910ebc92] |
/usr/sbin/mysqld(handle_one_connection+0x3d)[0x55f4910ebe0d] |
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7f045d85f6ba] |
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f045cf0a41d] |
"Optimize table" does not help because the second crash occurred after an "optimize table run" on that database table.
Attachments
Issue Links
- is blocked by
-
MDEV-13542 Crashing on a corrupted page is unhelpful
-
- Closed
-
- is duplicated by
-
MDEV-19743 Crash while reorganizing an index page
-
- Closed
-
-
MDEV-19783 Random crashes and corrupt data in INSTANT-added columns
-
- Closed
-
- relates to
-
MDEV-11369 Instant add column for InnoDB
-
- Closed
-
-
MDEV-19916 Corruption after instant ADD/DROP and shrinking the index tree
-
- Closed
-
-
MDEV-20090 mysqld: dict0dict.ic:879: dict_field_t* dict_index_get_nth_field(const dict_index_t*, ulint): Assertion `pos < index->n_def' failed.
-
- Closed
-
elenst reasons that this bug is about the assertion failure, which is reporting corruption of the table, which in the reported case was likely introduced in an older 10.3 or 10.4 version of MariaDB Server before the
MDEV-19916fix (10.3.17, 10.4.7).This assertion could also fail due to something else causing the corruption.
By this reasoning, I will not close this bug as a duplicate of
MDEV-19916, but I will lower the priority.Instead of reporting the corruption by an assertion failure, we should ideally return an error to the client and abort the operation. It might not be wise to initiate rollback of the current transaction, because that might end up corrupting the known-corrupted index even further. This is conceptually related to
MDEV-13542Crashing on a corrupted page is unhelpful.