[MDEV-19319] InnoDB: Assertion failure in thread Created: 2019-04-24 Updated: 2021-12-08 Resolved: 2021-12-08 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Server, Storage Engine - InnoDB |
| Affects Version/s: | 5.5.60 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Minor |
| Reporter: | Leo Kirchner | Assignee: | Marko Mäkelä |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Virtual Red Hat Enterprise Linux 7.6 |
||
| Attachments: |
|
| Description |
|
Using software PHPIPAM mysqld restarts whenever there's a bit of load on the database. I think that there's no lost data, but I'm not sure. I've attached the mariadb.log file. One of the instances of this issue starts at line 10140 of the file and ends at the very end. |
| Comments |
| Comment by Marko Mäkelä [ 2019-04-24 ] | |||||||||
|
To make this more searchable: mariadb.log
Which file system is this running on? Are there any related messages in the system log? sudo dmesg? Have you run a file system check? kevg mentioned today that InnoDB is sometimes ignoring errors from fsync(), but this seems to be the opposite case. I think that the only viable alternative to crashing would be to make the database instance read-only. But that could be even harder to pull off than more robust handling of read errors ( | |||||||||
| Comment by Leo Kirchner [ 2019-04-25 ] | |||||||||
|
sudo dmesg shows this four times:
the times stamps don't correspond to the mariadb-errors though. The filesystem is XFS. The system log isn't showing any related errors either. | |||||||||
| Comment by Leo Kirchner [ 2019-04-25 ] | |||||||||
|
Alright now the process has crashed and isn't restarting. Systemd shows the following errors
while the mariadb.log file shows the exact same errors. When I remove the redo-logfiles from the mariadb directory the service starts up correctly. | |||||||||
| Comment by Marko Mäkelä [ 2019-04-29 ] | |||||||||
|
It looks like we cannot rule out hardware failure. You could also try to see how many errors are reported by the following:
If you remove the InnoDB redo logs (or use innodb_force_recovery=6), then you can expect any sort of corruption. That could only be used as a last resort for dumping the data if you did not have recent backups. And I would not blindly trust the consistency of the data. If the server buffer pool was mostly clean before the restart, it might be close to consistent. | |||||||||
| Comment by Marko Mäkelä [ 2021-12-08 ] | |||||||||
|
I think that it is perfectly reasonable to kill the server if a write to the redo log fails. Theoretically, it could be thinkable to make the server read-only, but it would be rather much effort to do that, for relatively little gain. |