summaryrefslogtreecommitdiff
path: root/sql/item_func.h
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2014-02-01 09:33:26 +0100
committerSergei Golubchik <sergii@pisem.net>2014-02-01 09:33:26 +0100
commit27d45e46968e4bd623565688a997b83b0a5cc1a8 (patch)
tree8df9c87f8fd3855d81e3ae46078d34609668e63a /sql/item_func.h
parent27fbb637d36324992b270f0dc0472807ffa4ebc2 (diff)
downloadmariadb-git-27d45e46968e4bd623565688a997b83b0a5cc1a8.tar.gz
MDEV-5574 Set AUTO_INCREMENT below max value of column.
Update InnoDB to 5.6.14 Apply MySQL-5.6 hack for MySQL Bug#16434374 Move Aria-only HA_RTREE_INDEX from my_base.h to maria_def.h (breaks an assert in InnoDB) Fix InnoDB memory leak
Diffstat (limited to 'sql/item_func.h')
-rw-r--r--sql/item_func.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/sql/item_func.h b/sql/item_func.h
index 4b1516dcc4d..270c031955a 100644
--- a/sql/item_func.h
+++ b/sql/item_func.h
@@ -1909,6 +1909,41 @@ public:
/* TODO: consider adding in support for the MATCH-based virtual columns */
return trace_unsupported_by_check_vcol_func_processor(func_name());
}
+private:
+ /**
+ Check whether storage engine for given table,
+ allows FTS Boolean search on non-indexed columns.
+
+ @todo A flag should be added to the extended fulltext API so that
+ it may be checked whether search on non-indexed columns are
+ supported. Currently, it is not possible to check for such a
+ flag since @c this->ft_handler is not yet set when this function is
+ called. The current hack is to assume that search on non-indexed
+ columns are supported for engines that does not support the extended
+ fulltext API (e.g., MyISAM), while it is not supported for other
+ engines (e.g., InnoDB)
+
+ @param table_arg Table for which storage engine to check
+
+ @retval true if BOOLEAN search on non-indexed columns is supported
+ @retval false otherwise
+ */
+ bool allows_search_on_non_indexed_columns(TABLE* table_arg)
+ {
+ // Only Boolean search may support non_indexed columns
+ if (!(flags & FT_BOOL))
+ return false;
+
+ DBUG_ASSERT(table_arg && table_arg->file);
+
+ // Assume that if extended fulltext API is not supported,
+ // non-indexed columns are allowed. This will be true for MyISAM.
+ if ((table_arg->file->ha_table_flags() & HA_CAN_FULLTEXT_EXT) == 0)
+ return true;
+
+ return false;
+ }
+
};