← Back to team overview

maria-developers team mailing list archive

Re: Rev 3915: MDEV-5388 - Reduce usage of LOCK_open: unused_tables

 

Hi Sergei,

On Wed, Dec 11, 2013 at 09:34:02PM +0100, Sergei Golubchik wrote:
> Hi, Sergey!
> 
> On Dec 11, Sergey Vojtovich wrote:
> > On Tue, Dec 10, 2013 at 10:14:32PM +0100, Sergei Golubchik wrote:
> > > Hi, Sergey!
> > > 
> > > Did you benchmark the improvement you get with this patch?
> > Yes, my results against recent 10.0 are in jira task description.
> 
> Ah, I see, thanks. Great!
> 
> > Also please find Axel's results (MDEV-4956 + MDEV-5388) attached.
> > From Axel's results please note performance regression between 10.0.4
> > and 10.0.5.
> 
> Why is that, do you know?
Not yet, but I plan to investigate it next week.

> 
> > > Okay, so you only purge one table at time? Since purge is kind of an
> > > expensive operation, it's better to amortize the cost of it by
> > > purging many tables at once.
> > With current algorithm it is impossible to get multiple tables for
> > purge here, explanation above.
> 
> But you said that in the next patch it becomes possible, or did I
> misunderstand?
Yes, it becomes possible, but I'd say it is headache of the next patch.

It becomes possible when two (or more) tc_add_table() executed concurrently:

thr1: tc_count++
thr2: tc_count++
// Now we will try to evict 2 tables.
thr1: <LOCK_open>start expensive eviction</LOCK_open>
thr2: <LOCK_open>start expensive eviction</LOCK_open>

But for now it is like:
thr1: <LOCK_open>tc_count++; start expensive eviction</LOCK_open>
thr2: <LOCK_open>tc_count++; start expensive eviction</LOCK_open>

Regards,
Sergey


Follow ups

References