@@ -252,7 +252,8 @@ row_merge_buf_redundant_convert(
252
252
dfield_t * field,
253
253
ulint len,
254
254
ulint zip_size,
255
- mem_heap_t * heap)
255
+ mem_heap_t * heap,
256
+ trx_t * trx)
256
257
{
257
258
ut_ad (DATA_MBMINLEN (field->type .mbminmaxlen ) == 1 );
258
259
ut_ad (DATA_MBMAXLEN (field->type .mbminmaxlen ) > 1 );
@@ -271,7 +272,7 @@ row_merge_buf_redundant_convert(
271
272
field_ref_zero, BTR_EXTERN_FIELD_REF_SIZE));
272
273
273
274
byte* data = btr_copy_externally_stored_field (
274
- &ext_len, field_data, zip_size, field_len, heap);
275
+ &ext_len, field_data, zip_size, field_len, heap, trx );
275
276
276
277
ut_ad (ext_len < len);
277
278
@@ -314,7 +315,8 @@ row_merge_buf_add(
314
315
const row_ext_t * ext,
315
316
doc_id_t * doc_id,
316
317
mem_heap_t * conv_heap,
317
- bool * exceed_page)
318
+ bool * exceed_page,
319
+ trx_t * trx)
318
320
{
319
321
ulint i;
320
322
const dict_index_t * index;
@@ -473,7 +475,7 @@ row_merge_buf_add(
473
475
row_merge_buf_redundant_convert (
474
476
row_field, field, col->len ,
475
477
dict_table_zip_size (old_table),
476
- conv_heap);
478
+ conv_heap, trx );
477
479
} else {
478
480
/* Field length mismatch should not
479
481
happen when rebuilding redundant row
@@ -1692,7 +1694,7 @@ row_merge_read_clustered_index(
1692
1694
(row && (rows_added = row_merge_buf_add (
1693
1695
buf, fts_index, old_table,
1694
1696
psort_info, row, ext, &doc_id,
1695
- conv_heap, &exceed_page)))) {
1697
+ conv_heap, &exceed_page, trx )))) {
1696
1698
1697
1699
/* If we are creating FTS index,
1698
1700
a single row can generate more
@@ -1805,7 +1807,7 @@ row_merge_read_clustered_index(
1805
1807
buf, fts_index, old_table,
1806
1808
psort_info, row, ext,
1807
1809
&doc_id, conv_heap,
1808
- &exceed_page)))) {
1810
+ &exceed_page, trx )))) {
1809
1811
/* An empty buffer should have enough
1810
1812
room for at least one record. */
1811
1813
ut_error;
0 commit comments