49class Spatial_reference_system;
74 const byte *data1,
ulint len1,
75 const byte *data2,
ulint len2);
117 const ulint *offsets,
134 ulint *matched_fields);
163 const ulint *offsets);
173 const ulint *offsets);
187 const ulint *offsets1,
188 const ulint *offsets2,
190 struct TABLE *table);
211 bool spatial_index_non_leaf,
bool nulls_unequal,
212 ulint *matched_fields,
bool cmp_btree_recs =
true);
231 bool spatial_index_non_leaf,
232 ulint *matched_fields =
nullptr,
233 bool cmp_btree_recs =
true);
235#ifndef UNIV_HOTBACKUP
Definition: spatial_reference_system.h:53
SQL data field and tuple.
Prototypes for global functions in ha_innodb.cc that are called by InnoDB C code.
Common header for many mysys elements.
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
mode
Definition: file_handle.h:60
page_cur_mode_t
Definition: page0types.h:176
static int cmp_dfield_dfield(const dfield_t *dfield1, const dfield_t *dfield2, bool is_asc)
Compare two data fields.
bool cmp_cols_are_equal(const dict_col_t *col1, const dict_col_t *col2, bool check_charsets)
Returns true if two columns are equal for comparison purposes.
Definition: rem0cmp.cc:118
static bool cmp_dfield_dfield_eq_prefix(const dfield_t *dfield1, const dfield_t *dfield2)
Compare two data fields.
static int cmp_rec_rec(const rec_t *rec1, const rec_t *rec2, const ulint *offsets1, const ulint *offsets2, const dict_index_t *index, bool spatial_index_non_leaf, ulint *matched_fields=nullptr, bool cmp_btree_recs=true)
Compare two B-tree records.
int cmp_rec_rec_simple(const rec_t *rec1, const rec_t *rec2, const ulint *offsets1, const ulint *offsets2, const dict_index_t *index, struct TABLE *table)
Compare two physical records that contain the same number of columns, none of which are stored extern...
Definition: rem0cmp.cc:932
int cmp_dtuple_rec_with_gis(const dtuple_t *dtuple, const rec_t *rec, const ulint *offsets, page_cur_mode_t mode, const dd::Spatial_reference_system *srs)
Compare a GIS data tuple to a physical record.
Definition: rem0cmp.cc:544
static int cmp_multi_value_dfield_dfield(const dfield_t *dfield1, const dfield_t *dfield2)
Compare two data fields, the first one can be of any form of multi-value field, while the second one ...
int cmp_dtuple_rec_with_match_bytes(const dtuple_t *dtuple, const rec_t *rec, const dict_index_t *index, const ulint *offsets, ulint *matched_fields, ulint *matched_bytes)
Compare a data tuple to a physical record.
Definition: rem0cmp.cc:730
int cmp_dtuple_rec(const dtuple_t *dtuple, const rec_t *rec, const dict_index_t *index, const ulint *offsets)
Compare a data tuple to a physical record.
Definition: rem0cmp.cc:878
int cmp_rec_rec_with_match(const rec_t *rec1, const rec_t *rec2, const ulint *offsets1, const ulint *offsets2, const dict_index_t *index, bool spatial_index_non_leaf, bool nulls_unequal, ulint *matched_fields, bool cmp_btree_recs=true)
Compare two B-tree records.
Definition: rem0cmp.cc:986
int cmp_dtuple_rec_with_match_low(const dtuple_t *dtuple, const rec_t *rec, const dict_index_t *index, const ulint *offsets, ulint n_cmp, ulint *matched_fields)
Compare a data tuple to a physical record.
Definition: rem0cmp.cc:600
int cmp_data_data(ulint mtype, ulint prtype, bool is_asc, const byte *data1, ulint len1, const byte *data2, ulint len2)
Compare two data fields.
Definition: rem0cmp.cc:595
int cmp_dtuple_rec_with_gis_internal(const dtuple_t *dtuple, const rec_t *rec, const ulint *offsets, const dd::Spatial_reference_system *srs)
Compare a GIS data tuple to a physical record in rtree non-leaf node.
Definition: rem0cmp.cc:564
constexpr auto DISABLE_MIN_REC_FLAG_CHECK
Disable the min flag during row comparisons.
Definition: rem0cmp.h:45
bool cmp_dtuple_is_prefix_of_rec(const dtuple_t *dtuple, const rec_t *rec, const dict_index_t *index, const ulint *offsets)
Check if a dtuple is a prefix of a record.
Definition: rem0cmp.cc:885
Comparison services for records.
byte rec_t
Definition: rem0types.h:41
Structure for an SQL data field.
Definition: data0data.h:617
Data structure for a column in a table.
Definition: dict0mem.h:489
Data structure for an index.
Definition: dict0mem.h:1046
Structure for an SQL data tuple of fields (logical record)
Definition: data0data.h:694
unsigned long int ulint
Definition: univ.i:406
constexpr ulint ULINT_UNDEFINED
The 'undefined' value for a ulint.
Definition: univ.i:420