List:Internals« Previous MessageNext Message »
From:Michael Widenius Date:March 5 2001 6:28pm
Subject:Re: MySQL parallel server
View as plain text  

>>>>> "Denis" == Denis Pithon <denis.pithon@stripped> writes:

Denis> Hi all,
Denis> ** About our main change (we lock data file each time MySQL server lock
Denis> index file)

Monty> Why do you need to do this?  As MySQL will not access the 
Monty> data file if the index file is not locked, there shouldn't
Monty> exist a need to lock the data file.

Denis> When you lock (R or W) a file through GFS, you are sure to see _all_
Denis> changes done by the other nodes on this file. If you don't lock data file
Denis> with node "bar", new rows previously inserted by node "foo" won't be seen
Denis> by node "bar". If you remember, I often have a synchronization problem
Denis> between index file and data file before this change. "check table" said
Denis> that:

Denis>         Size of datafile is: 0         Should be: 25

Denis> Index file is up to date, but not data file. That's the reason why we lock
Denis> data file. Just to retrieve last changes of the data file. 

Ok. So 'lock' actually is a kind of 'sync' for the GFS.  That explains
why you need it.

Denis> ** Check table

Me> I have some minor problems with "check" tables. I must check
Me> (no pun!) if it locks tables before any access, and if it 
Me> uses files mentionned above. If it doesn't lock, these 
Me> troubles are quite normal...

Monty> Check tables uses the normal MySQL locks, so this shouldn't
Monty> be a problem.

Denis> I "strace" mysqld, to check that all read/write access are nested in
Denis> lock/unlock calls. In fact, it seems that "check table" write to the table
Denis> _after_ it released the lock. But I must control it again.

Please do!  It shouldn't!

Denis> ** Transactionnal

Denis> Bad news (for me), BDB use mmap. That's really bad in our cluster context.
Denis> I could try to "msync" after each query/trx but I don't know if it's
Denis> possible and safe. Somebody knows ?

Denis> I'm waiting hard for innobase... Hoping there is no fatal mmap, and that I
Denis> could "parallelize" it! 

Heikki, any comments ?

MySQL parallel serverDenis Pithon27 Feb
  • MySQL parallel serverMichael Widenius5 Mar
    • Re: MySQL parallel serverDenis Pithon5 Mar
      • Re: MySQL parallel serverMichael Widenius5 Mar
Re: MySQL parallel serverHeikki Tuuri8 Mar