tuple: zap tuple_extra
tuple_extra() allows to store arbitrary metadata inside tuples. To use it, one should set extra_size when creating a tuple_format. It was introduced for storing UPSERT counter or column mask inside vinyl statements. Turned out that it wasn't really needed as UPSERT counter can be stored on lsregion while column mask doesn't need to be stored at all. Actually, the whole idea of tuple_extra() is rather crooked: why would we need it if we can inherit struct tuple instead, as we do in case of memtx_tuple and vy_stmt? Accessing an inherited struct is much more convenient than using tuple_extra(). So this patch gets rid of tuple_extra(). To do that, it partially reverts the following commits: 6c0842e0 vinyl: refactor vy_stmt_alloc() 74ff46d8 vinyl: add special format for tuples with column mask 11eb7816 Add extra size to tuple_format->field_map_size
Showing
- src/box/blackhole.c 1 addition, 1 deletionsrc/box/blackhole.c
- src/box/memtx_engine.c 5 additions, 5 deletionssrc/box/memtx_engine.c
- src/box/memtx_space.c 1 addition, 1 deletionsrc/box/memtx_space.c
- src/box/tuple.c 6 additions, 6 deletionssrc/box/tuple.c
- src/box/tuple.h 6 additions, 24 deletionssrc/box/tuple.h
- src/box/tuple_format.c 2 additions, 4 deletionssrc/box/tuple_format.c
- src/box/tuple_format.h 1 addition, 22 deletionssrc/box/tuple_format.h
- src/box/vinyl.c 2 additions, 2 deletionssrc/box/vinyl.c
- src/box/vy_lsm.c 2 additions, 3 deletionssrc/box/vy_lsm.c
- src/box/vy_stmt.c 4 additions, 4 deletionssrc/box/vy_stmt.c
- test/unit/vy_iterators_helper.c 3 additions, 3 deletionstest/unit/vy_iterators_helper.c
- test/unit/vy_mem.c 1 addition, 1 deletiontest/unit/vy_mem.c
- test/unit/vy_point_lookup.c 1 addition, 1 deletiontest/unit/vy_point_lookup.c
Loading
Please register or sign in to comment