Try to reduce the memory usage for FTS queries. InnoDB can remove
the f_n_char from fts_string_t.
Marko suggested few changes:
(1) Do we need both `doc_id` and `rank` in `fts_ranking_t`, or could we use a `union` of them? I assume that the two above `ib_rbt_t` are already storing either doc id or rank in the key, so we would not need to repeat that in the value.
(2) Why do we have `table_id` and `index_id` in `fts_table_t`? There already is `table` which I guess we could replace with `index`.
(3) Can we remove `fts_table_t::suffix`? And `fts_table_t::charset`?
(4) Do we need `fts_savepoint_t` with names? Savepoints are internally numbers (number of undo log records written before the savepoint).
(5) Can `fts_doc_ids_t` or `fts_trx_table_t::added_doc_ids` be simplified?
(6) `ib_uc_t` is unused. The definition could be removed.
Address all the questions above. Try to reduce memory usage without affecting performance of the query.