Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.0.12
-
None
Description
If I try to create a file-based CONNECT table, an error message tells me that temp CONNECT tables are not supported. But I was able to create a MYSQL table, which returns junk results when queried:
MariaDB [test]> CREATE TABLE t SELECT 10, 'test', 'prova'; |
Query OK, 1 row affected (0.42 sec)
|
Records: 1 Duplicates: 0 Warnings: 0
|
|
MariaDB [test]> CREATE TEMPORARY TABLE tempmy ENGINE=CONNECT, TABLE_TYPE=MYSQL, CONNECTION='mysql://root:root@127.0.0.1/test/t'; |
Query OK, 0 rows affected (0.28 sec) |
|
MariaDB [test]> SELECT * FROM tempmy; |
+----+------+-------+ |
| 10 | test | prova |
|
+----+------+-------+ |
| 0 | | |
|
+----+------+-------+ |
1 row in set (0.00 sec) |
Instead, I would expect to see an error after CREATE TABLE.
Indeed temporary CONNECT tables are not supported. This is indicated to MariaDB by the flag:
connect_hton->flags= HTON_TEMPORARY_NOT_SUPPORTED;
For instance trying to do:
CREATE TEMPORARY TABLE t1 (
a int not null
) ENGINE=CONNECT table_type=MYSQL CONNECTION='mysql://root@127.0.0.1/test/t2';
is not accepted and returns the error message:
Table storage engine 'CONNECT' does not support the option 'TEMPORARY'
This is probably tested by the parser and MariaDB issues this message.
However in the present case MariaDB fails to test it and leaves the creation to be executed. The junk return is normal because CONNECT is not made to retrieve memory data.
My feeling is that this is not a CONNECT problem but a problem with MariaDB not stopping the create of a temporary table when it should do it.