148 bool *doc_id_32_bit) noexcept;
SQL data field and tuple.
dberr_t
Definition: db0err.h:38
DDL buffer infrastrucure.
Data dictionary global types.
uint64_t doc_id_t
Document id type.
Definition: fts0fts.h:76
Full text search internal header file.
Full text search types file.
The general architecture is that the work is done in two phases, roughly the read and write phase.
Definition: btr0load.cc:41
static Value err()
Create a Value object that represents an error condition.
Definition: json_binary.cc:909
Definition: varlen_sort.h:183
This file contains a set of libraries providing overloads for regular dynamic allocation routines whi...
Definition: aligned_alloc.h:47
std::vector< T, ut::allocator< T > > vector
Specialization of vector which uses allocator.
Definition: ut0new.h:2872
Definition: mysqltest.cc:384
For loading indexes.
Definition: ddl0impl-builder.h:47
DDL context/configuration.
Definition: ddl0ddl.h:320
Structure for reporting duplicate records.
Definition: ddl0ddl.h:131
dict_index_t * m_index
Index being sorted.
Definition: ddl0ddl.h:145
Information about temporary files used in merge sort.
Definition: ddl0fts.h:70
dfield_t * m_field
Field contains document string.
Definition: ddl0fts.h:72
doc_id_t m_doc_id
Document ID.
Definition: ddl0fts.h:75
Definition: ddl0fts.cc:254
For parsing and sorting the documents.
Definition: ddl0fts.cc:118
Full text search index builder.
Definition: ddl0fts.h:66
std::vector< Parser *, ut::allocator< Parser * > > Parsers
Definition: ddl0fts.h:160
Inserter * m_inserter
For inserting the rows parsed by the m_parsers.
Definition: ddl0fts.h:166
FTS(Context &ctx, dict_index_t *index, dict_table_t *table) noexcept
Constructor.
Definition: ddl0fts.cc:1433
dict_index_t * m_index
DDL index instance.
Definition: ddl0fts.h:178
dberr_t init(size_t n_threads) noexcept
Create the internal data structures.
Definition: ddl0fts.cc:1495
dict_index_t * sort_index() noexcept
Definition: ddl0fts.h:96
Parsers m_parsers
For parsing the documents, there is one per thread.
Definition: ddl0fts.h:163
dberr_t enqueue(Doc_item *doc_item) noexcept
For sending the documents to parse to the parsing threads.
Definition: ddl0fts.cc:1541
dict_table_t * m_table
DDL table instance.
Definition: ddl0fts.h:181
dberr_t setup_insert_phase() noexcept
Setup the insert phase inoput files generated by the parsers.
Definition: ddl0fts.cc:1627
~FTS() noexcept
~Destructor.
Definition: ddl0fts.cc:1441
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:434
dberr_t create(size_t n_threads) noexcept
Create the data structures required to build the FTS index.
Definition: ddl0fts.cc:1449
size_t get_n_parsers() const noexcept
Definition: ddl0fts.h:129
dict_index_t * index() noexcept
Definition: ddl0fts.h:93
dberr_t insert(Builder *builder) noexcept
Start the merging and insert threads.
Definition: ddl0fts.cc:1569
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:1648
std::vector< std::thread > Threads
Definition: ddl0fts.h:159
Context & m_ctx
DDL context.
Definition: ddl0fts.h:169
dberr_t check_for_errors() noexcept
Check for error status after the parsing has finished.
Definition: ddl0fts.cc:1547
dict_index_t * m_sort_index
Temporary index instance with relevant FTS columns.
Definition: ddl0fts.h:184
void destroy() noexcept
Destroy the data structures and clean up.
Definition: ddl0fts.cc:1482
Threads m_threads
For tracking parser threads.
Definition: ddl0fts.h:187
dberr_t start_parse_threads(Builder *builder) noexcept
Start the parsing, create the threads.
Definition: ddl0fts.cc:1505
Dup m_dup
Duplicate key reporting.
Definition: ddl0fts.h:172
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:175
Structure for an SQL data field.
Definition: data0data.h:604
Data structure for an index.
Definition: dict0mem.h:1045
Data structure for a database table.
Definition: dict0mem.h:1908