summaryrefslogtreecommitdiff
path: root/storage/innobase/fts/fts0fts.cc
diff options
context:
space:
mode:
Diffstat (limited to 'storage/innobase/fts/fts0fts.cc')
-rw-r--r--storage/innobase/fts/fts0fts.cc23
1 files changed, 4 insertions, 19 deletions
diff --git a/storage/innobase/fts/fts0fts.cc b/storage/innobase/fts/fts0fts.cc
index e35a7efa678..d0931de9614 100644
--- a/storage/innobase/fts/fts0fts.cc
+++ b/storage/innobase/fts/fts0fts.cc
@@ -833,7 +833,8 @@ void fts_clear_all(dict_table_t *table, trx_t *trx)
fts_optimize_remove_table(table);
fts_drop_tables(trx, table);
- fts_free(table);
+ table->fts->~fts_t();
+ table->fts= nullptr;
DICT_TF2_FLAG_UNSET(table, DICT_TF2_FTS);
}
@@ -5350,14 +5351,14 @@ fts_t::~fts_t()
{
ut_ad(add_wq == NULL);
- if (cache != NULL) {
+ if (cache) {
fts_cache_clear(cache);
fts_cache_destroy(cache);
- cache = NULL;
}
/* There is no need to call ib_vector_free() on this->indexes
because it is stored in this->fts_heap. */
+ mem_heap_free(fts_heap);
}
/*********************************************************************//**
@@ -5381,22 +5382,6 @@ fts_create(
}
/*********************************************************************//**
-Free the FTS resources. */
-void
-fts_free(
-/*=====*/
- dict_table_t* table) /*!< in/out: table with FTS indexes */
-{
- fts_t* fts = table->fts;
-
- fts->~fts_t();
-
- mem_heap_free(fts->fts_heap);
-
- table->fts = NULL;
-}
-
-/*********************************************************************//**
Take a FTS savepoint. */
UNIV_INLINE
void