box: allow indexing of fixed-size numeric field types
The types added by commit 2e0f9a3c ("box: introduce fixed-size numeric field types") can't be indexed. Fix it. Perf results for `tuple_compare' benchmark with FIELD_TYPE_INTEGER: NO_WRAP $ taskset 0x2 ~/benchmark/tools/compare.py benchmarks \ ./tuple.perftest.ref ./tuple.perftest.exp \ --benchmark_min_warmup_time=10 \ --benchmark_repetitions=30 \ --benchmark_report_aggregates_only=true \ --benchmark_filter=tuple_compare$ [...] Comparing ./tuple.perftest.ref to ./tuple.perftest.exp Benchmark Time CPU Time Old Time New CPU Old CPU New ------------------------------------------------------------------------------------------------------------------------- tuple_tuple_compare_mean +0.0158 +0.0158 27 27 27 27 tuple_tuple_compare_median +0.0153 +0.0152 27 27 27 27 tuple_tuple_compare_stddev +0.0042 +0.0039 1 1 1 1 tuple_tuple_compare_cv -0.0114 -0.0117 0 0 0 0 NO_WRAP Closes #9611 NO_DOC=bugfix NO_CHANGELOG=unreleased
Showing
- src/box/index_def.c 21 additions, 0 deletionssrc/box/index_def.c
- src/box/index_def.h 13 additions, 1 deletionsrc/box/index_def.h
- src/box/memtx_space.c 3 additions, 13 deletionssrc/box/memtx_space.c
- src/box/tuple_compare.cc 96 additions, 0 deletionssrc/box/tuple_compare.cc
- src/box/vinyl.c 4 additions, 12 deletionssrc/box/vinyl.c
- test/engine-luatest/gh_9548_fixed_size_numeric_types_test.lua 77 additions, 18 deletions.../engine-luatest/gh_9548_fixed_size_numeric_types_test.lua
Loading
Please register or sign in to comment