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

Ilya Kosarev i.kosarev at tarantool.org
Mon Feb 10 13:43:37 MSK 2020


>> As far as i see, memtx reserves extents using specific pool and
>> mempool_alloc. We will need to implement additional feature to reserve
>> slabs in memtx arena and provide them specifically for truncation
>> needs.
>
>Yes. But the way you say it sounds negative. Are you suggesting
>not implementing this feature and just hacking in quota bypass is
>better? Why?
I am afraid that ‘reserving’ approach both doesn’t always guarantee
successful truncation (without some overcomplicated actions) and adds
extra code complexity comparing to the quota on/off mechansm.
I see that simple quota hacking doesn’t look good, but i think it might
be even worse to implement partial solution along with all the extra
code. So far it might be better not to touch this problem, as Vlad
suggests, considering it as not critical.
  
>> However, after that we will encounter the necessity to calculate
>> how much space we need to reserve for truncation tuples.
>
>No. 1 slab is enough.
>
>> I guess we
>> might want to reserve a truncation buf for each created space and
>> re-reserve it on each truncation, although such logic seems
>> overcomplicated.
>
>Indeed, this would be strange.
>
>> Furthermore, the problem with space:delete() might happen exactly when
>> we are trying to reserve a slab to guarantee successful statement-level
>> rollback. This can't be fixed using reservation tech.
>
>Two events can't happen at the same time in a single-threaded
>application. Please take time to explain what you mean here.
I mean «when» in terms of place (where we reserve), not time. I mean
this is one more problem which can't be solved using 'reserve' tech,
although i am not sure it really should be solved through quota bypass.

>--
>Konstantin Osipov, Moscow, Russia 
 
 
--
Ilya Kosarev
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.tarantool.org/pipermail/tarantool-patches/attachments/20200210/0157886e/attachment.html>


More information about the Tarantool-patches mailing list