45 const byte* field =
static_cast<const byte *
>(dfield_get_data(dfield));
47 byte* buf = ext->
buf + i * REC_MAX_INDEX_COL_LEN;
49 ut_ad(i < ext->n_ext);
66 buf, REC_MAX_INDEX_COL_LEN, zip_size, field, f_len);
93 + (n_ext - 1) *
sizeof ret->
len));
96 ut_ad(zip_size <= UNIV_PAGE_SIZE);
100 ret->
buf =
static_cast<byte *
>(
mem_heap_alloc(heap, n_ext * REC_MAX_INDEX_COL_LEN));
102 memset(ret->
buf, 0xaa, n_ext * REC_MAX_INDEX_COL_LEN);
103 UNIV_MEM_ALLOC(ret->
buf, n_ext * REC_MAX_INDEX_COL_LEN);
107 for (i = 0; i < n_ext; i++) {
110 dfield = dtuple_get_nth_field(tuple, ext[i]);
111 row_ext_cache_fill(ret, i, zip_size, dfield);
UNIV_INTERN row_ext_t * row_ext_create(ulint n_ext, const ulint *ext, const dtuple_t *tuple, ulint zip_size, mem_heap_t *heap)
UNIV_INTERN ulint btr_copy_externally_stored_field_prefix(byte *buf, ulint len, ulint zip_size, const byte *data, ulint local_len)
UNIV_INLINE ulint dfield_is_ext(const dfield_t *field)
UNIV_INLINE ulint dfield_get_len(const dfield_t *field)
UNIV_INLINE void * mem_heap_alloc(mem_heap_t *heap, ulint n)
#define BTR_EXTERN_FIELD_REF_SIZE
const byte field_ref_zero[BTR_EXTERN_FIELD_REF_SIZE]