MySQL 8.4.2
Source Code Documentation
|
The cache for the FTS system. More...
#include <fts0types.h>
Public Attributes | |
rw_lock_t | lock |
lock protecting all access to the memory buffer. More... | |
rw_lock_t | init_lock |
lock used for the cache initialization, it has different SYNC level as above cache lock More... | |
ib_mutex_t | optimize_lock |
Lock for OPTIMIZE. More... | |
ib_mutex_t | deleted_lock |
Lock covering deleted_doc_ids. More... | |
ib_mutex_t | doc_id_lock |
Lock covering Doc ID. More... | |
ib_vector_t * | deleted_doc_ids |
Array of deleted doc ids, each element is of type fts_update_t. More... | |
ib_vector_t * | indexes |
We store the stats and inverted index for the individual FTS indexes in this vector. More... | |
ib_vector_t * | get_docs |
information required to read the document from the table. More... | |
ulint | total_size |
total size consumed by the ilist field of all nodes. More... | |
uint64_t | total_size_before_sync |
total size of fts cache, when last SYNC request was sent More... | |
fts_sync_t * | sync |
sync structure to sync data to disk More... | |
ib_alloc_t * | sync_heap |
The heap allocator, for indexes and deleted_doc_ids, ie. More... | |
ib_alloc_t * | self_heap |
This heap is the heap out of which an instance of the cache itself was created. More... | |
doc_id_t | next_doc_id |
Next doc id. More... | |
doc_id_t | synced_doc_id |
Doc ID sync-ed to CONFIG table. More... | |
doc_id_t | first_doc_id |
first doc id since this table was opened More... | |
ulint | deleted |
Number of doc ids deleted since last optimized. More... | |
ulint | added |
Number of doc ids added since last optimized. More... | |
fts_stopword_t | stopword_info |
Cached stopwords for the FTS. More... | |
mem_heap_t * | cache_heap |
Cache Heap. More... | |
The cache for the FTS system.
It is a memory-based inverted index that new entries are added to, until it grows over the configured maximum size, at which time its contents are written to the INDEX table.
ulint fts_cache_t::added |
Number of doc ids added since last optimized.
This variable is covered by the deleted lock
mem_heap_t* fts_cache_t::cache_heap |
Cache Heap.
ulint fts_cache_t::deleted |
Number of doc ids deleted since last optimized.
This variable is covered by deleted_lock
ib_vector_t* fts_cache_t::deleted_doc_ids |
Array of deleted doc ids, each element is of type fts_update_t.
ib_mutex_t fts_cache_t::deleted_lock |
Lock covering deleted_doc_ids.
ib_mutex_t fts_cache_t::doc_id_lock |
Lock covering Doc ID.
doc_id_t fts_cache_t::first_doc_id |
first doc id since this table was opened
ib_vector_t* fts_cache_t::get_docs |
information required to read the document from the table.
Each element is of type fts_doc_t
ib_vector_t* fts_cache_t::indexes |
We store the stats and inverted index for the individual FTS indexes in this vector.
Each element is an instance of fts_index_cache_t
rw_lock_t fts_cache_t::init_lock |
lock used for the cache initialization, it has different SYNC level as above cache lock
rw_lock_t fts_cache_t::lock |
lock protecting all access to the memory buffer.
FIXME: this needs to be our new upgrade-capable rw-lock
doc_id_t fts_cache_t::next_doc_id |
Next doc id.
ib_mutex_t fts_cache_t::optimize_lock |
Lock for OPTIMIZE.
ib_alloc_t* fts_cache_t::self_heap |
This heap is the heap out of which an instance of the cache itself was created.
Objects created using this heap will last for the lifetime of the cache
fts_stopword_t fts_cache_t::stopword_info |
Cached stopwords for the FTS.
fts_sync_t* fts_cache_t::sync |
sync structure to sync data to disk
ib_alloc_t* fts_cache_t::sync_heap |
The heap allocator, for indexes and deleted_doc_ids, ie.
transient objects, they are recreated after a SYNC is completed
doc_id_t fts_cache_t::synced_doc_id |
Doc ID sync-ed to CONFIG table.
ulint fts_cache_t::total_size |
total size consumed by the ilist field of all nodes.
SYNC is run whenever this gets too big
uint64_t fts_cache_t::total_size_before_sync |
total size of fts cache, when last SYNC request was sent