149 bool *doc_id_32_bit) noexcept;
SQL data field and tuple.
dberr_t
Definition: db0err.h:39
DDL buffer infrastructure.
Data dictionary global types.
uint64_t doc_id_t
Document id type.
Definition: fts0fts.h:79
Full text search internal header file.
Full text search types file.
static PFS_engine_table_share_proxy table
Definition: pfs.cc:61
The general architecture is that the work is done in two phases, roughly the read and write phase.
Definition: btr0load.cc:42
static Value err()
Create a Value object that represents an error condition.
Definition: json_binary.cc:927
Definition: gcs_xcom_synode.h:64
This file contains a set of libraries providing overloads for regular dynamic allocation routines whi...
Definition: aligned_alloc.h:48
std::vector< T, ut::allocator< T > > vector
Specialization of vector which uses allocator.
Definition: ut0new.h:2874
Definition: mysqltest.cc:393
For loading indexes.
Definition: ddl0impl-builder.h:48
DDL context/configuration.
Definition: ddl0ddl.h:321
Structure for reporting duplicate records.
Definition: ddl0ddl.h:132
dict_index_t * m_index
Index being sorted.
Definition: ddl0ddl.h:146
Information about temporary files used in merge sort.
Definition: ddl0fts.h:71
dfield_t * m_field
Field contains document string.
Definition: ddl0fts.h:73
doc_id_t m_doc_id
Document ID.
Definition: ddl0fts.h:76
Definition: ddl0fts.cc:258
For parsing and sorting the documents.
Definition: ddl0fts.cc:119
Full text search index builder.
Definition: ddl0fts.h:67
std::vector< Parser *, ut::allocator< Parser * > > Parsers
Definition: ddl0fts.h:161
Inserter * m_inserter
For inserting the rows parsed by the m_parsers.
Definition: ddl0fts.h:167
FTS(Context &ctx, dict_index_t *index, dict_table_t *table) noexcept
Constructor.
Definition: ddl0fts.cc:1467
dict_index_t * m_index
DDL index instance.
Definition: ddl0fts.h:179
dberr_t init(size_t n_threads) noexcept
Create the internal data structures.
Definition: ddl0fts.cc:1529
dict_index_t * sort_index() noexcept
Definition: ddl0fts.h:97
Parsers m_parsers
For parsing the documents, there is one per thread.
Definition: ddl0fts.h:164
dberr_t enqueue(Doc_item *doc_item) noexcept
For sending the documents to parse to the parsing threads.
Definition: ddl0fts.cc:1575
dict_table_t * m_table
DDL table instance.
Definition: ddl0fts.h:182
dberr_t setup_insert_phase() noexcept
Setup the insert phase inoput files generated by the parsers.
Definition: ddl0fts.cc:1661
~FTS() noexcept
~Destructor.
Definition: ddl0fts.cc:1475
static dict_index_t * create_index(dict_index_t *index, dict_table_t *table, bool *doc_id_32_bit) noexcept
Create a temporary "fts sort index" used to merge sort the tokenized doc string.
Definition: ddl0fts.cc:443
dberr_t create(size_t n_threads) noexcept
Create the data structures required to build the FTS index.
Definition: ddl0fts.cc:1483
size_t get_n_parsers() const noexcept
Definition: ddl0fts.h:130
dict_index_t * index() noexcept
Definition: ddl0fts.h:94
dberr_t insert(Builder *builder) noexcept
Start the merging and insert threads.
Definition: ddl0fts.cc:1603
dberr_t scan_finished(dberr_t err) noexcept
Inform the parser threads that the scanning phase is complete so that they can shutdown after emptyin...
Definition: ddl0fts.cc:1682
std::vector< std::thread > Threads
Definition: ddl0fts.h:160
Context & m_ctx
DDL context.
Definition: ddl0fts.h:170
dberr_t check_for_errors() noexcept
Check for error status after the parsing has finished.
Definition: ddl0fts.cc:1581
dict_index_t * m_sort_index
Temporary index instance with relevant FTS columns.
Definition: ddl0fts.h:185
void destroy() noexcept
Destroy the data structures and clean up.
Definition: ddl0fts.cc:1516
Threads m_threads
For tracking parser threads.
Definition: ddl0fts.h:188
dberr_t start_parse_threads(Builder *builder) noexcept
Start the parsing, create the threads.
Definition: ddl0fts.cc:1539
Dup m_dup
Duplicate key reporting.
Definition: ddl0fts.h:173
bool m_doc_id_32_bit
true if document ID should be stored as a 32 bit instead of a 64 bit.
Definition: ddl0fts.h:176
Structure for an SQL data field.
Definition: data0data.h:605
Data structure for an index.
Definition: dict0mem.h:1046
Data structure for a database table.
Definition: dict0mem.h:1909