diff --git a/src/box/memtx_hash.cc b/src/box/memtx_hash.cc index 72e2b40afda7ea9396f11e1a17beea6ae43695ac..a868a53a14f600902b6d12668fbd9af928dc37c7 100644 --- a/src/box/memtx_hash.cc +++ b/src/box/memtx_hash.cc @@ -546,6 +546,12 @@ hash_read_view_iterator_start(struct hash_read_view_iterator *it, return 0; } +static void +hash_read_view_reset_key_def(struct hash_read_view *rv) +{ + rv->view.common.arg = NULL; +} + #endif /* !defined(ENABLE_READ_VIEW) */ /** Implementation of create_iterator index_read_view callback. */ @@ -588,6 +594,7 @@ memtx_hash_index_create_read_view(struct index *base) rv->index = index; index_ref(base); light_index_view_create(&rv->view, &index->hash_table); + hash_read_view_reset_key_def(rv); return (struct index_read_view *)rv; } diff --git a/src/box/memtx_tree.cc b/src/box/memtx_tree.cc index fc32c8e6d3f4c9424388a742e729220216678d63..a58b9d864a2382320c32dbe1f77e943e9b44ae64 100644 --- a/src/box/memtx_tree.cc +++ b/src/box/memtx_tree.cc @@ -1762,6 +1762,13 @@ tree_read_view_iterator_start(struct tree_read_view_iterator<USE_HINT> *it, return 0; } +template <bool USE_HINT> +static void +tree_read_view_reset_key_def(struct tree_read_view<USE_HINT> *rv) +{ + rv->tree_view.common.arg = NULL; +} + #endif /* !defined(ENABLE_READ_VIEW) */ /** Implementation of create_iterator index_read_view callback. */ @@ -1813,6 +1820,7 @@ memtx_tree_index_create_read_view(struct index *base) rv->index = index; index_ref(base); memtx_tree_view_create(&rv->tree_view, &index->tree); + tree_read_view_reset_key_def(rv); return (struct index_read_view *)rv; }