diff options
author | Monty <monty@mariadb.org> | 2016-11-21 10:00:52 +0200 |
---|---|---|
committer | Monty <monty@mariadb.org> | 2017-12-03 13:58:34 +0200 |
commit | 25a1fdd18c28c5f1e2fe1fcc6d028e05b00f7ad7 (patch) | |
tree | f8da9684541622d9094bc3bf567635c423b8d2e6 /sql/ha_partition.cc | |
parent | c57e1bf5e65c6ec1dd68a34c1d7a88a92ef6e674 (diff) | |
download | mariadb-git-25a1fdd18c28c5f1e2fe1fcc6d028e05b00f7ad7.tar.gz |
Applied patch 001_mariadb-10.0.15.partition_cond_push.diff
- Added cond_push() and cond_pop() to ha_partition.cc
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r-- | sql/ha_partition.cc | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc index 99ca97aea23..827f7cb61f7 100644 --- a/sql/ha_partition.cc +++ b/sql/ha_partition.cc @@ -9142,6 +9142,39 @@ TABLE_LIST *ha_partition::get_next_global_for_child() } +const COND *ha_partition::cond_push(const COND *cond) +{ + handler **file= m_file; + COND *res_cond = NULL; + DBUG_ENTER("ha_partition::cond_push"); + + do + { + if ((*file)->pushed_cond != cond) + { + if ((*file)->cond_push(cond)) + res_cond = (COND *) cond; + else + (*file)->pushed_cond = cond; + } + } while (*(++file)); + DBUG_RETURN(res_cond); +} + + +void ha_partition::cond_pop() +{ + handler **file= m_file; + DBUG_ENTER("ha_partition::cond_push"); + + do + { + (*file)->cond_pop(); + } while (*(++file)); + DBUG_VOID_RETURN; +} + + struct st_mysql_storage_engine partition_storage_engine= { MYSQL_HANDLERTON_INTERFACE_VERSION }; |