[Tarantool-patches] [PATCH v3 2/2] memtx: allow quota overuse for truncation and deletion

Konstantin Osipov kostja.osipov at gmail.com
Thu Feb 6 19:26:14 MSK 2020


* Ilya Kosarev <i.kosarev at tarantool.org> [20/02/06 19:15]:
> 
> From memtx_tuple_new() we call smalloc(). In case it is calling
> mempool_alloc(), we are passing the pool from memtx->alloc, chosen
> depending on it's size. Later this tuple may be deleted. Then smfree()
> is called, which uses mempool_find() to acquire the pool we want to
> free.
> In case we are using some other specific pool, current mempool_find()
> won't be able to find it. This means we need to process this case
> explicitly and it seems to add noticeable unjustified complexity to the
> code.

Why do you need to use a special pool? Can't you reserve a single
slab in memtx_arena, just like memtx reserves extents now, and
allow use of this slab for any pool *only* when processing truncate? 

-- 
Konstantin Osipov, Moscow, Russia
https://scylladb.com


More information about the Tarantool-patches mailing list