'MySQL hanging on "Waiting for page cleaner"
I'm currently facing some issues with a MySQL service.
To be more specific, more and more frequently, the MySQL service of my virtual machine under Debian hangs on the status activating with the following message: Waiting for page cleaner.
Here is what the /var/log/mysql/error.log file contains at the time of the crash :
Version: '10.3.27-MariaDB-0+deb10u1' socket: '/run/mysqld/mysqld.sock' port: 3306 Debian 10
2022-03-09 17:16:24 0 [ERROR] mysqld: Out of memory (Needed 128663552 bytes)
2022-03-09 17:16:24 0 [ERROR] mysqld: Out of memory (Needed 96485376 bytes)
2022-03-09 17:16:24 0 [ERROR] mysqld: Out of memory (Needed 72351744 bytes)
2022-03-09 17:16:24 0 [Note] InnoDB: Using Linux native AIO
2022-03-09 17:16:24 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2022-03-09 17:16:24 0 [Note] InnoDB: Uses event mutexes
2022-03-09 17:16:24 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2022-03-09 17:16:24 0 [Note] InnoDB: Number of pools: 1
2022-03-09 17:16:24 0 [Note] InnoDB: Using SSE2 crc32 instructions
2022-03-09 17:16:24 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
2022-03-09 17:16:24 0 [ERROR] InnoDB: mmap(137035776 bytes) failed; errno 12
2022-03-09 17:16:24 0 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
2022-03-09 17:16:24 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2022-03-09 17:16:24 0 [Note] InnoDB: Starting shutdown...
double free or corruption (out)
220309 17:16:25 [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.27-MariaDB-0+deb10u1
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=0
max_threads=153
thread_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 467424 K bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
Thread pointer: 0x0
I tried to look for a possible solution on the internet without success.
Here are the last 2 solutions I tried to implement to fix this problem:
- Added the following line to the
/etc/var/mysql/my.cnffile :
innodb_force_recovery=1
This solution did not work.
- Added the following line to the
/etc/var/mysql/my.cnffile :
innodb_buffer_pool_size=1G
So far the service has not crashed. But I'm not 100% sure I solved the problem.
I'm open to any suggestions if anyone has come across this issue in the past.
Thank you for your understanding.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
