Bug #82234 The MEMORY Storage Engine page claims Replication support: Yes
Submitted: 14 Jul 2016 21:15 Modified: 7 Nov 2017 15:15
Reporter: Jeremy Cole (Basic Quality Contributor) (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S2 (Serious)
Version:All OS:Any
Assigned to: CPU Architecture:Any

[14 Jul 2016 21:15] Jeremy Cole
Description:
The MySQL documentation claims, on the The MEMORY Storage Engine page (http://dev.mysql.com/doc/refman/5.7/en/memory-storage-engine.html) that the MEMORY storage engine supports replication. While this is sorta true (with asterisk, see note that it doesn't really work), it's more of a "No *" than a "Yes *".

Mixing the MEMORY storage engine and replication is a surefire recipe for failure, especially now that RBR is the default. It will just immediately fail on any slave restart with an error like:

Could not execute Update_rows event on table ...; Can't find record in '...', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND

Even with statement-based replication, users are likely to suffer greatly from data inconsistencies between master and slave (and may not even know it).

IMHO, it would be far better to *MUCH* more strongly claim that MEMORY and replication are fundamentally incompatible (understanding that despite that, some industrious users still make it work), than to claim compatibility when there really is none.

How to repeat:
N/A.

Suggested fix:
Fix the documentation to strongly and clearly claim that MEMORY and replication are not compatible. Get rid of the MEMORY storage engine completely.
[15 Jul 2016 4:10] MySQL Verification Team
Hello Jeremy,

Thank you for the report and feedback!

Regards,
Umesh
[7 Nov 2017 15:15] Margaret Fisher
Posted by developer:
 
Thanks for your comment. I have discussed this with the product leads and the table concerned will now state "Limited" rather than "Yes" for Replication support in the MEMORY storage engine. I have also added a footnote directing readers to the discussion below in the section "MEMORY Tables and Replication" which explains the limitations of support. This should show online within the next couple of days.