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