Details
-
Bug
-
Status: Closed (View Workflow)
-
Trivial
-
Resolution: Fixed
-
5.5.36, 10.0.10
-
None
Description
When binary log is enabled in ROW format, statements like DELETE IGNORE ... etc. fail with ER_BINLOG_ROW_MODE_AND_STMT_ENGINE (Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = ROW and at least one table uses a storage engine limited to statement-based logging), while the same statements without IGNORE are executed all right. It works the same way on MariaDB-5.5.30-TokuDB-7.0.1, but it would be good to make sure it's an intentional limitation and not an oversight.
MariaDB [test]> DROP TABLE IF EXISTS t1; |
Query OK, 0 rows affected (0.35 sec) |
|
MariaDB [test]> CREATE TABLE t1 (a INT(11), b CHAR(8)) ENGINE=TokuDB; |
Query OK, 0 rows affected (0.92 sec) |
|
MariaDB [test]> INSERT INTO t1 (a,b) VALUES (10000,'foobar'),(1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e'); |
Query OK, 6 rows affected (0.43 sec) |
Records: 6 Duplicates: 0 Warnings: 0
|
|
MariaDB [test]> DELETE IGNORE FROM t1; |
ERROR 1662 (HY000): Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = ROW and at least one table uses a storage engine limited to statement-based logging. |
MariaDB [test]> DELETE FROM t1; |
Query OK, 6 rows affected (0.18 sec) |
Test case (for MariaDB):
# run with --mysqld=--plugin-load=ha_tokudb, |
# because installing engine at runtime causes assertion failure MDEV-6082 |
|
--source include/have_binlog_format_row.inc
|
|
# install soname 'ha_tokudb.so'; |
DROP TABLE IF EXISTS t1; |
CREATE TABLE t1 (a INT(11), b CHAR(8)) ENGINE=TokuDB; |
INSERT INTO t1 (a,b) VALUES (10000,'foobar'),(1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e'); |
DELETE IGNORE FROM t1; |
|
# uninstall soname 'ha_tokudb.so'; |
bzr version-info
revision-id: holyfoot@askmonty.org-20130514121908-d6tp4zsdkim0q4dg
|
revno: 3768
|
branch-nick: 5.5-hf-tokudb
|
Attachments
Issue Links
- relates to
-
MDEV-4507 Include TokuDB storage engine
- Closed
- links to