Error
Error Code:
1692
MariaDB Error 1692: Unsafe Mixed Storage Engine Logging
Description
This error signifies that a single SQL statement is attempting to operate on tables that use different storage engines, where some are 'self-logging' (e.g., NDB Cluster) and others rely on MariaDB's binary log for replication (e.g., InnoDB, MyISAM). MariaDB deems this combination unsafe for data consistency and replication. It typically occurs when complex queries interact with tables having incompatible logging mechanisms.
Error Message
Mixing self-logging and non-self-logging engines in a statement is unsafe.
Known Causes
3 known causesCross-Engine Joins
A SQL query attempts to join tables where one table uses a self-logging storage engine (like NDB Cluster) and another uses a non-self-logging engine (like InnoDB or MyISAM).
Mixed-Engine Subqueries
A subquery references a table using a self-logging engine, while the outer query or another part of the statement operates on a non-self-logging engine table.
DML on Mixed Engine Tables
An INSERT, UPDATE, or DELETE statement implicitly or explicitly interacts with tables that employ both self-logging and non-self-logging storage engines.
Solutions
Coming SoonGeneral Troubleshooting Tips
- Check the error message carefully for specific details
- Review recent changes that might have caused the error
- Search for the exact error code in the official documentation
- Check log files for additional context
- Try restarting the application or service