Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

mariadb cant start WSREP: std::bad_alloc

Tags:

mariadb

galera

Good day everyone.

The cluster was based on mariadb10.3. updated to 10.4,

worked for a week + -

After a network failure, it stopped starting.

in the log only this

2020-11-14 15:03:16 0 [Note] WSREP: Server initial position: 00000000-0000-0000-0000-000000000000:-1
2020-11-14 15:03:16 0 [Note] WSREP: Loading provider /usr/lib64/galera-4/libgalera_smm.so initial position: 00000000-0000-0000-0000-000000000000:-1
2020-11-14 15:03:16 0 [Note] WSREP: wsrep_load(): loading provider library '/usr/lib64/galera-4/libgalera_smm.so'
2020-11-14 15:03:16 0 [Note] WSREP: wsrep_load(): Galera 26.4.6(r1d8d67c) by Codership Oy <[email protected]> loaded successfully.
2020-11-14 15:03:16 0 [Note] WSREP: CRC-32C: using 64-bit x86 acceleration.
2020-11-14 15:03:16 0 [Note] WSREP: Found saved state: 6d4be20b-d396-11e9-8d00-7e3231736285:1, safe_to_bootstrap: 0
2020-11-14 15:03:16 0 [Note] WSREP: GCache DEBUG: opened preamble:
Version: 2
UUID: 6d4be20b-d396-11e9-8d00-7e3231736285
Seqno: -1 - -1
Offset: -1
Synced: 0
2020-11-14 15:03:16 0 [Note] WSREP: Recovering GCache ring buffer: version: 2, UUID: 6d4be20b-d396-11e9-8d00-7e3231736285, offset: -1
2020-11-14 15:03:16 0 [Note] WSREP: GCache::RingBuffer initial scan...  0.0% (        0/134217752 bytes) complete.
2020-11-14 15:03:16 0 [ERROR] WSREP: std::bad_alloc
2020-11-14 15:03:16 0 [ERROR] WSREP: Failed to create a new provider '/usr/lib64/galera-4/libgalera_smm.so' with options 'gcache.size=128M': Failed to initialize wsrep provider
2020-11-14 15:03:16 0 [ERROR] WSREP: Failed to load provider
2020-11-14 15:03:16 0 [ERROR] Aborting
Warning: Memory not freed: 40

There is enough memory and space.

Besides maria, there is nothing else on the server.

Recovery from a snapshot before the fall does not help.

like image 579
Константин Аксарин Avatar asked Nov 14 '20 14:11

Константин Аксарин


1 Answers

A corrupted galera.cache (GCache::RingBuffer initial scan->std::bad_alloc) can be solved with sudo truncate /var/lib/mysql/galera.cache -s 0 + restart.

NOTE! This will delete all data and force a fresh SST sync.

like image 118
Otto Kekäläinen Avatar answered Oct 06 '22 10:10

Otto Kekäläinen