← Back to team overview

maria-discuss team mailing list archive

Re: PBXT issues

 

Hi Monty,

On May 5, 2010, at 7:02 PM, Michael Widenius wrote:

"Paul" == Paul McCullagh <paul.mccullagh@xxxxxxxxxxxxx> writes:

<cut>

Paul> PBXT can help you out with this. Do the following:

Paul> (1) Load the telpbxt table with a few 1000 rows (or use telpbxt2,
Paul> since telpbxt already has too many rows in it).
Paul> (2) In mysql client enter: CHECK TABLE telpbxt2; (note: do not do this Paul> on a table with millions of rows. It will take very long to complete).
Paul> (3) Check the MySQL error log, you should see something like the
Paul> output below.

Paul> CHECK TABLE: ./test/telpbxt
Paul> Record buffer size      = 1024
Paul> Fixed length rec. len.  = 1020
Paul> Handle data record size = 638
Paul> Min/max header size     = 14/26
Paul> Min/avg/max record size = 19/624/1019
Paul> Avg row len set for tab = not specified
Paul> Rows fixed length       = NO
Paul> Maximum fixed size      = 16384
Paul> ...

Paul> Paste the output in an e-mail, and I will show you what to use for the
Paul> AVG_ROW_LENGTH.

Would it be hard for PBXT to as part of the CHECK TABLE add:

Optimial create AVG_ROW_LENGTH: ?

Currently CHECK TABLE prints:

Average comp. rec. len. = 200

This is the closest to your suggestion of an "Optimal create AVG_ROW_LENGTH", there is at the moment.

But, this value is not necessarily optimal.

Exactly what is optimal depends on a few additional factors, like whether you want to optimize for size or caching behavior.

What I can do is add more information to help in this decision making process, and output a "Recommended AVG_ROW_LENGTH".

Then I can change OPTIMIZE TABLE to automatically set this value, if no explicit AVG_ROW_LENGTH has been set yet.

Best regards,

Paul

--
Paul McCullagh
PrimeBase Technologies
www.primebase.org
www.blobstreaming.org
pbxt.blogspot.com






Follow ups

References