[PATCH 25/25] vinyl: eliminate disk read on REPLACE/DELETE

Konstantin Osipov kostja at tarantool.org
Tue Jul 31 23:55:52 MSK 2018

* Vladimir Davydov <vdavydov.dev at gmail.com> [18/07/27 16:55]:
> When executing a REPLACE or DELETE request for a vinyl space, we need to
> delete the old tuple from secondary indexes if any, e.g. if there's a
> space with the primary index over field 1 and a secondary index over
> field 2 and there's REPLACE{1, 10} in the space, then REPLACE{1, 20} has
> to generate DELETE{10, 1} in order to overwrite REPLACE{10, 1} before
> inserting REPLACE{20, 1} into the secondary index. Currently, we
> generate DELETEs for secondary indexes immediately on request execution,
> which makes REPLACE/DELETE operations disk-bound in case the space has
> secondary indexes, because in order to delete the old tuple we have to
> look it up in the primary index first.

Please salvage Vlad's test coverage.

Please rebase the patch set after pushing the approved patches.

Konstantin Osipov, Moscow, Russia, +7 903 626 22 32
http://tarantool.io - www.twitter.com/kostja_osipov

More information about the Tarantool-patches mailing list