diff options
Diffstat (limited to 'storage/spider/spd_table.h')
-rw-r--r-- | storage/spider/spd_table.h | 69 |
1 files changed, 67 insertions, 2 deletions
diff --git a/storage/spider/spd_table.h b/storage/spider/spd_table.h index 6140f5bbdc7..7165c4504f8 100644 --- a/storage/spider/spd_table.h +++ b/storage/spider/spd_table.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2008-2014 Kentoku Shiba +/* Copyright (C) 2008-2017 Kentoku Shiba This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -11,7 +11,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ uchar *spider_tbl_get_key( SPIDER_SHARE *share, @@ -389,11 +389,20 @@ void spider_free_tmp_dbton_handler( TABLE_LIST *spider_get_parent_table_list( ha_spider *spider ); +List<Index_hint> *spider_get_index_hints( + ha_spider *spider + ); st_select_lex *spider_get_select_lex( ha_spider *spider ); +void spider_get_select_limit_from_select_lex( + st_select_lex *select_lex, + longlong *select_limit, + longlong *offset_limit +); + void spider_get_select_limit( ha_spider *spider, st_select_lex **select_lex, @@ -421,6 +430,10 @@ bool spider_check_direct_order_limit( ha_spider *spider ); +int spider_set_direct_limit_offset( + ha_spider* spider + ); + bool spider_check_index_merge( TABLE *table, st_select_lex *select_lex @@ -454,3 +467,55 @@ int spider_discover_table_structure( HA_CREATE_INFO *info ); #endif + +#ifndef WITHOUT_SPIDER_BG_SEARCH +int spider_create_spider_object_for_share( + SPIDER_TRX *trx, + SPIDER_SHARE *share, + ha_spider **spider +); + +void spider_free_spider_object_for_share( + ha_spider **spider +); + +int spider_create_sts_threads( + SPIDER_THREAD *spider_thread +); + +void spider_free_sts_threads( + SPIDER_THREAD *spider_thread +); + +int spider_create_crd_threads( + SPIDER_THREAD *spider_thread +); + +void spider_free_crd_threads( + SPIDER_THREAD *spider_thread +); + +void *spider_table_bg_sts_action( + void *arg +); + +void *spider_table_bg_crd_action( + void *arg +); + +void spider_table_add_share_to_sts_thread( + SPIDER_SHARE *share +); + +void spider_table_add_share_to_crd_thread( + SPIDER_SHARE *share +); + +void spider_table_remove_share_from_sts_thread( + SPIDER_SHARE *share +); + +void spider_table_remove_share_from_crd_thread( + SPIDER_SHARE *share +); +#endif |