| Bug #83970 | Unclear error from engines not supporting sql_exec_mode=IDEMPOTENT | ||
|---|---|---|---|
| Submitted: | 25 Nov 2016 21:10 | Modified: | 5 Dec 2016 16:12 |
| Reporter: | Emanuel Calvo (OCA) | Email Updates: | |
| Status: | Verified | Impact on me: | |
| Category: | MySQL Server: Replication | Severity: | S3 (Non-critical) |
| Version: | OS: | Any | |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | IDEMPOTENT replication | ||
[5 Dec 2016 16:12]
MySQL Verification Team
Hi! I find your request fully justified. For your information, InnoDB also supports IDEMPOTENT RBR replication. I am verifying this bug with twofold effect. First, that error message is made more correct and much more verbose. Second, that documentation is more clear on this subject.

Description: Although documentation is clear regarding slave_exec_mode "This should not be changed; currently, IDEMPOTENT mode is supported **only** by NDB and is used when replicating NDB **to InnoDB**.", if you try to use IDEMPOTENT with a MyISAM table, you'll get a not very explicit/detailed error on the SQL thread: Could not execute Write_rows_v1 event on table <ANON>; Got error 175 from storage engine, Error_code: 1030; handler error No Error!; Is not very clear as the returned error is "No error!". It could be more useful some sort of post- check on this variable as suggestion or add this to the docs. How to repeat: - Add an existing key on the slave on a table using a different engine than InnoDB/NDB. - Let the SQL thread fail due to 1062 (Duplicate key error) - Switch to sql_exec_mode to IDEMPOTENT, restart the SQL thread.