/********************************************************************//**
Creates a cache of column prefixes of externally stored columns.
@return own: column prefix cache */
row_ext_t*
row_ext_create( /*===========*/
ulint n_ext, /*!< in: number of externally stored columns */ const ulint* ext, /*!< in: col_no's of externally stored columns intheInnoDBtableobject,asreportedby dict_col_get_no();NOTrelativetotherecords
in the clustered index */ const dict_table_t& table, /*!< in: table */ const dtuple_t* tuple, /*!< in: data tuple containing the field referencesoftheexternallystored columns;mustbeindexedbycol_no; theclusteredindexrecordmustbe coveredbyalockorapagelatch
to prevent deletion (rollback or purge). */
mem_heap_t* heap); /*!< in: heap where created */
/********************************************************************//**
Looks up a column prefix of an externally stored column.
@return column prefix, or NULL if the column is not stored externally, or pointer to field_ref_zero if the BLOB pointer is unset */
UNIV_INLINE const byte*
row_ext_lookup_ith( /*===============*/ const row_ext_t* ext, /*!< in/out: column prefix cache */
ulint i, /*!< in: index of ext->ext[] */
ulint* len); /*!< out: length of prefix, in bytes, atmostthelengthdeterminedby
DICT_MAX_FIELD_LEN_BY_FORMAT() */ /********************************************************************//**
Looks up a column prefix of an externally stored column.
@return column prefix, or NULL if the column is not stored externally, or pointer to field_ref_zero if the BLOB pointer is unset */
UNIV_INLINE const byte*
row_ext_lookup( /*===========*/ const row_ext_t* ext, /*!< in: column prefix cache */
ulint col, /*!< in: column number in the InnoDB tableobject,asreportedby dict_col_get_no();NOTrelativetothe
records in the clustered index */
ulint* len); /*!< out: length of prefix, in bytes, atmostthelengthdeterminedby
DICT_MAX_FIELD_LEN_BY_FORMAT() */
/** Prefixes of externally stored columns */ struct row_ext_t{
ulint n_ext; /*!< number of externally stored columns */ const ulint* ext; /*!< col_no's of externally stored columns */
byte* buf; /*!< backing store of the column prefix cache */
ulint max_len;/*!< maximum prefix length, it could be REC_ANTELOPE_MAX_INDEX_COL_LENor REC_VERSION_56_MAX_INDEX_COL_LENdepending
on row format */
ulint zip_size;/*!< ROW_FORMAT=COMPRESSED page size, or 0 */
ulint len[1]; /*!< prefix lengths; 0 if not cached */
};
#include"row0ext.inl"
#endif
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-10-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.