@@ -388,15 +388,16 @@ memtx_space_execute_update(struct space *space, struct txn *txn,
388388
389389 /* Update the tuple; legacy, request ops are in request->tuple */
390390 uint32_t new_size = 0 , bsize ;
391+ struct tuple_format * format = space -> format ;
391392 const char * old_data = tuple_data_range (old_tuple , & bsize );
392393 const char * new_data =
393394 tuple_update_execute (request -> tuple , request -> tuple_end ,
394- old_data , old_data + bsize ,
395+ old_data , old_data + bsize , format -> dict ,
395396 & new_size , request -> index_base , NULL );
396397 if (new_data == NULL )
397398 return -1 ;
398399
399- stmt -> new_tuple = memtx_tuple_new (space -> format , new_data ,
400+ stmt -> new_tuple = memtx_tuple_new (format , new_data ,
400401 new_data + new_size );
401402 if (stmt -> new_tuple == NULL )
402403 return -1 ;
@@ -442,6 +443,7 @@ memtx_space_execute_upsert(struct space *space, struct txn *txn,
442443 if (index_get (index , key , part_count , & old_tuple ) != 0 )
443444 return -1 ;
444445
446+ struct tuple_format * format = space -> format ;
445447 if (old_tuple == NULL ) {
446448 /**
447449 * Old tuple was not found. A write optimized
@@ -460,11 +462,11 @@ memtx_space_execute_upsert(struct space *space, struct txn *txn,
460462 * @sa https://github.com/tarantool/tarantool/issues/1156
461463 */
462464 if (tuple_update_check_ops (request -> ops , request -> ops_end ,
465+ format -> dict ,
463466 request -> index_base ) != 0 ) {
464467 return -1 ;
465468 }
466- stmt -> new_tuple = memtx_tuple_new (space -> format ,
467- request -> tuple ,
469+ stmt -> new_tuple = memtx_tuple_new (format , request -> tuple ,
468470 request -> tuple_end );
469471 if (stmt -> new_tuple == NULL )
470472 return -1 ;
@@ -482,12 +484,13 @@ memtx_space_execute_upsert(struct space *space, struct txn *txn,
482484 const char * new_data =
483485 tuple_upsert_execute (request -> ops , request -> ops_end ,
484486 old_data , old_data + bsize ,
485- & new_size , request -> index_base ,
486- false, & column_mask );
487+ format -> dict , & new_size ,
488+ request -> index_base , false,
489+ & column_mask );
487490 if (new_data == NULL )
488491 return -1 ;
489492
490- stmt -> new_tuple = memtx_tuple_new (space -> format , new_data ,
493+ stmt -> new_tuple = memtx_tuple_new (format , new_data ,
491494 new_data + new_size );
492495 if (stmt -> new_tuple == NULL )
493496 return -1 ;
0 commit comments