Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Not a Bug
-
10.0.3
-
None
-
Ubuntu/Precise/LXContainer
Description
ConnectSE does not send the WHERE part of an statement in opposite to the docs (https://kb.askmonty.org/en/connect-table-types-mysql-table-type-accessing-mysqlmariadb-tables/) to the remote server.
Given:
CREATE TABLE `federatedconnect` ( |
`id` int(11) NOT NULL, |
`id2` int(11) DEFAULT NULL |
) ENGINE=CONNECT DEFAULT CHARSET=latin1 `TABLE_TYPE`='mysql' `TABNAME`='aha' `DBNAME`='test' `OPTION_LIST`='user=me,host=10.0.3.191' |
Regarding to the docs select * from federatedconnect where id=1 should be sent as: SELECT id,id2 FROM aha WHERE id=1 to the remote server.
Using ngrep I see only: SELECT `id`, `id2` FROM `aha` So all rows are send instead of only one.
The table aha has about 1000 rows. So even another 'proof'.
MariaDB [test]> show status like 'handler_read_rnd_next'; select * from federate_classic where id=1; show status like 'handler_read_rnd_next'; |
+-----------------------+-------+ |
| Variable_name | Value |
|
+-----------------------+-------+ |
| Handler_read_rnd_next | 7347 |
|
+-----------------------+-------+ |
1 row in set (0.00 sec) |
|
+------+------+ |
| id | id2 |
|
+------+------+ |
| 1 | 4 |
|
+------+------+ |
1 row in set (0.00 sec) |
|
+-----------------------+-------+ |
| Variable_name | Value |
|
+-----------------------+-------+ |
| Handler_read_rnd_next | 8356 |
|
+-----------------------+-------+ |
1 row in set (0.00 sec) |
|
So we see all rows are send.
Regads
Erkan