[MDEV-29795] DELETEs generated in the binary log after server restart for MEMORY tables are not documented Created: 2022-10-14  Updated: 2022-12-20  Resolved: 2022-10-18

Status: Closed
Project: MariaDB Server
Component/s: Documentation, Replication, Storage Engine - Memory
Affects Version/s: None
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Valerii Kravchuk Assignee: Ian Gilfillan
Resolution: Fixed Votes: 0
Labels: missing_manual

Issue Links:
Relates

 Description   

MySQL manual (https://dev.mysql.com/doc/refman/5.6/en/memory-storage-engine.html) clearly says the following about MEMORY tables:

"When a replication source server shuts down and restarts, its MEMORY tables become empty. To replicate this effect to replicas, the first time that the source uses a given MEMORY table after startup, it logs an event that notifies replicas that the table must be emptied by writing a DELETE statement for that table to the binary log. When a replica server shuts down and restarts, its MEMORY tables also become empty, and it writes a DELETE statement to its own binary log, which is passed on to any downstream replicas."

Our KB page on MEMORY engine (https://mariadb.com/kb/en/memory-storage-engine/) does not say anything about this behaviour and it's a surprise then to see a slave generating these DELETEs at a random point of time after restart during any kind of access to the table, even via information_schema.tables query. This breaks strict GTID-based replication and comes as a surprise, as neither general query log nor audit log contains such DELETE statements.



 Comments   
Comment by Ian Gilfillan [ 2022-10-17 ]

I've documented the behaviour on the KB, and will leave the issue open for discussion of the GTID issue.

Generated at Thu Feb 08 10:11:21 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.