[Tarantool-patches] [PATCH v3] tuple: drop extra restrictions for multikey index

Nikita Pettik korablev at tarantool.org
Fri Aug 21 11:46:25 MSK 2020


On 14 Aug 17:51, Ilya Kosarev wrote:
> Multikey index did not work properly with nullable root field in
> tuple_raw_multikey_count(). Now it is fixed and corresponding
> restrictions are dropped. This also means that we can drop implicit
> nullability update for array/map fields and make all fields nullable
> by default, as it was until e1d3fe8ab8eed65394ad17409401a93b6fcdc435
> (tuple format: don't allow null where array/map is expected), as far as
> default non-nullability itself doesn't solve any real problems while
> providing confusing behavior (gh-5027).
> 
> Follow-up #5027
> Closes #5192
> 
> @TarantoolBot document
> Title: tuple: allow nullable multikey index root
> Update the documentation for space_object:create_index() to reflect
> that it is now safe for multikey index root to be nullable.
> Previously it was not safe to insert, for example, box.NULL as an array
> field which elements are the part of multikey index due to error in
> counter of multikey index keys in tuple. It was partly fixed using
> default non-nullability for tuple fields. In 2.3.3 the restriction on
> nullable multikey index root was introduced. Now the counter problem is
> fixed and all tuple fields are nullable by default as before 2.2.1.
> ---
> Branch: https://github.com/tarantool/tarantool/tree/i.kosarev/gh-5192-fix-multikey-index-restrictions
> Issue: https://github.com/tarantool/tarantool/issues/5192
> 
> @ChangeLog:
>  * Dropped restrictions on nullable multikey index root. They were
>  introduced due to inaccuracy in multikey index realization. It is
>  now fixed. Also all fields are now nullable by default as it was
>  before 2.2.1 (gh-5192).
> 
>  Changes in v2:
> - removed insignificant changes
> - fixed tests comments
> 
>  Changes in v3:
> - fixed some nits
> - added docbot request

LGTM now.
 


More information about the Tarantool-patches mailing list