1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-08 14:22:09 +03:00
Files
mariadb-columnstore-engine/dbcon/mysql
Alexander Barkov f00cc571b5 MCOL-4264 [Cross-Engine] UPDATE to INNODB table with WHERE clause using Columnstore as sub query failing
Problem:

When processing cross-engine queries like:

update cstab1 set a=100 where a not in (select a from innotab1 where a=11);
delete from innotab1  where a not in (select a from cstab1 where a=1);

the ColumnStore plugin erroneously executed the whole query inside
ColumnStore.

Fix:

- Adding a new member cal_connection_info::lock_type and setting it
  inside ha_mcs_impl_external_lock() to the value passed in the parameter
  "lock_type".

- Adding a method cal_connection_info::isReadOnly() to test
  if the last table lock made in ha_mcs_impl_external_lock()
  for done for reading.

- Adding a new condition checking cal_connection_info::isReadOnly() inside
  ha_mcs_impl_rnd_init(). If the current table was locked last time for reading,
  then doUpdateDelete() should not be executed.
2020-09-08 07:06:52 +04:00
..
2016-01-06 14:08:59 -06:00
2016-01-06 14:08:59 -06:00
2016-01-06 14:08:59 -06:00
2016-07-15 10:49:57 -05:00
2020-08-18 12:09:31 -05:00
2016-01-06 14:08:59 -06:00
2016-01-06 14:08:59 -06:00
2020-07-12 17:55:37 +00:00
2020-01-13 10:47:14 -08:00
2019-12-19 18:15:16 +01:00
2020-05-14 16:02:49 -05:00
2016-07-19 10:46:58 -05:00