On 21/12/2015 20:10, Nirbhay Choubey wrote:

On Mon, Dec 21, 2015 at 12:47 PM, Michele Tota <michele.tota@lnf.infn.it> wrote:
Hello Nirbhay,
thanks for your reply. We have the 10.1.9 mariadb version; the bug that your refers is similar but in our case the enforcing works properly on the node used for the initial write, while replicated writes on other nodes generate tables using another engine.

I tried the following on 10.1.9 :

Version: Server version: 10.1.9-MariaDB-debug-log Source distribution

Node 1:
MariaDB [test]> SET @@enforce_storage_engine=INNODB;
Query OK, 0 rows affected (0.01 sec)

MariaDB [test]> CREATE TABLE t1(i INT) ENGINE=INNODB;
Query OK, 0 rows affected (0.07 sec)

MariaDB [test]> CREATE TABLE t2(i INT) ENGINE=MYISAM;
ERROR 1286 (42000): Unknown storage engine 'MyISAM'

Node 2:
MariaDB [test]> SHOW TABLES;
+----------------+
| Tables_in_test |
+----------------+
| t1             |
+----------------+
1 row in set (0.00 sec)


Do you get different results? Or your's is a different scenario altogether?

Best,
Nirbhay

From the sounds of it, the sql_mode option NO_ENGINE_SUBSTITUTION is set differently in Nirbhay and Michele's scenarios, so the MyISAM table is converted to InnoDB with a warning in one, and fails in the other.