Re: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-11 Thread Sergei Golubchik
Hi!

On Aug 10, Jeremy Zawodny wrote:
 On Wed, Aug 04, 2004 at 04:32:42PM +0300, Egor Egorov wrote:

   Since 4.0.17 MySQL sync()'s after it created an .frm file (in
   CREATE/ALTER TABLE).
  
 Wouldn't it make more sense to use fsync() on just the .frm file?  Or
 am I missing something here?

Nope, you are right.
MySQL does fsync(), not sync().

It was my mistake - I didn't know all these flavours of syncs so I
wrote sync() in my email :(

Regards,
Sergei

-- 
   __  ___ ___   __
  /  |/  /_ __/ __/ __ \/ /   Sergei Golubchik [EMAIL PROTECTED]
 / /|_/ / // /\ \/ /_/ / /__  MySQL AB, Senior Software Developer
/_/  /_/\_, /___/\___\_\___/  Osnabrueck, Germany
   ___/  www.mysql.com

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-10 Thread Jeremy Zawodny
On Wed, Aug 04, 2004 at 04:32:42PM +0300, Egor Egorov wrote:
 Sergei Golubchik [EMAIL PROTECTED] wrote:
 
  We're upgrading from 3.23.58 to 4.0.20 and found that that although the
  ALTER test results of sql-bench had been greatly improved, CREATE has
  shown nasty performance degradation.  Just before needing to make the
  decision to revert back to 3.23.58, we found a post here where someone
  had a similar problem when using SAN storage.  We see the problem using
  hardware RAID, shared storage or local SCSI disks.
  
  Yes.
  Since 4.0.17 MySQL sync()'s after it created an .frm file (in
  CREATE/ALTER TABLE).
 
 And note that the sync() call not only physically writes .frm file to disk, but
 also everything else which is in write cache. If the server is under load, sync()
 call may take seconds, tens of seconds or even hundreds of seconds. 
 
  As one usually doesn't create tables at the huge rate, it is not a
  problem.
  Unfortunately, it is apparently a problem for sql-bench :(
 
 Time to add a NO_SYNC option to CREATE TABLE, Sergei ? :) 

Wouldn't it make more sense to use fsync() on just the .frm file?  Or
am I missing something here?

Jeremy
-- 
Jeremy D. Zawodny |  Perl, Web, MySQL, Linux Magazine, Yahoo!
[EMAIL PROTECTED]  |  http://jeremy.zawodny.com/

[book] High Performance MySQL -- http://highperformancemysql.com/

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-04 Thread Egor Egorov
Sergei Golubchik [EMAIL PROTECTED] wrote:

 We're upgrading from 3.23.58 to 4.0.20 and found that that although the
 ALTER test results of sql-bench had been greatly improved, CREATE has
 shown nasty performance degradation.  Just before needing to make the
 decision to revert back to 3.23.58, we found a post here where someone
 had a similar problem when using SAN storage.  We see the problem using
 hardware RAID, shared storage or local SCSI disks.
 
 Yes.
 Since 4.0.17 MySQL sync()'s after it created an .frm file (in
 CREATE/ALTER TABLE).

And note that the sync() call not only physically writes .frm file to disk, but
also everything else which is in write cache. If the server is under load, sync()
call may take seconds, tens of seconds or even hundreds of seconds. 

 As one usually doesn't create tables at the huge rate, it is not a
 problem.
 Unfortunately, it is apparently a problem for sql-bench :(

Time to add a NO_SYNC option to CREATE TABLE, Sergei ? :) 





-- 
For technical support contracts, goto https://order.mysql.com/?ref=ensita
This email is sponsored by Ensita.net http://www.ensita.net/
   __  ___ ___   __
  /  |/  /_ __/ __/ __ \/ /Egor Egorov
 / /|_/ / // /\ \/ /_/ / /__   [EMAIL PROTECTED]
/_/  /_/\_, /___/\___\_\___/   MySQL AB / Ensita.net
   ___/   www.mysql.com




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-04 Thread Tinley, Jeremy
-Original Message-
From: Egor Egorov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, August 04, 2004 8:33 AM
To: [EMAIL PROTECTED]
Subject: Re: CREATE performance degradation from 4.0.17 - 4.0.20

Sergei Golubchik [EMAIL PROTECTED] wrote:

 As one usually doesn't create tables at the huge rate, it is not a
 problem.
 Unfortunately, it is apparently a problem for sql-bench :(

Time to add a NO_SYNC option to CREATE TABLE, Sergei ? :) 

Setting the sync_frm option to 0 (that was added in 4.0.18) corrected
the issue we saw with the test as a temporary solution.



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-04 Thread Sergei Golubchik
Hi!

On Aug 04, Egor Egorov wrote:
 Sergei Golubchik [EMAIL PROTECTED] wrote:
 
  We're upgrading from 3.23.58 to 4.0.20 and found that that although the
  ALTER test results of sql-bench had been greatly improved, CREATE has
  shown nasty performance degradation.  Just before needing to make the
  decision to revert back to 3.23.58, we found a post here where someone
  had a similar problem when using SAN storage.  We see the problem using
  hardware RAID, shared storage or local SCSI disks.
  
  Yes.
  Since 4.0.17 MySQL sync()'s after it created an .frm file (in
  CREATE/ALTER TABLE).
 
 And note that the sync() call not only physically writes .frm file to disk, but
 also everything else which is in write cache. If the server is under load, sync()
 call may take seconds, tens of seconds or even hundreds of seconds. 
 
  As one usually doesn't create tables at the huge rate, it is not a
  problem.  Unfortunately, it is apparently a problem for sql-bench :(
 
 Time to add a NO_SYNC option to CREATE TABLE, Sergei ? :) 

There is --skip-sync-frm option.
 
Regards,
Sergei

-- 
   __  ___ ___   __
  /  |/  /_ __/ __/ __ \/ /   Sergei Golubchik [EMAIL PROTECTED]
 / /|_/ / // /\ \/ /_/ / /__  MySQL AB, Senior Software Developer
/_/  /_/\_, /___/\___\_\___/  Osnabrueck, Germany
   ___/  www.mysql.com

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-04 Thread Peter Zaitsev
On Mon, 2004-08-02 at 14:57, Tinley, Jeremy wrote:
 We're upgrading from 3.23.58 to 4.0.20 and found that that although the
 ALTER test results of sql-bench had been greatly improved, CREATE has
 shown nasty performance degradation.  Just before needing to make the
 decision to revert back to 3.23.58, we found a post here where someone
 had a similar problem when using SAN storage.  We see the problem using
 hardware RAID, shared storage or local SCSI disks.
 
 The machine in question is a 3ghz, 4GB RAM, reiserfs.  The data and
 application reside on local SCSI disks, 10k rpm. All installations are
 the MySQL provided linux-binary (x86), Standard releases.

Hi,

This is the known issue.
In MySQL 4.0.17  calling fsync() on frm files was added during table
creation. This was done so create table is more durable if used with
transactional tables such as Innodb.   It however affects all tables at
this point.

In most cases new tables are created rarely so it is not the problem, 
if it is for you case  --skip-sync-frm option can be used to avoid such
behavior. 

On other hand B-C changes for some tests surprise me. Are the results
stable if you repeat the run ?  In some cases especially for short tests
deviation can be pretty large.


 
 Here is an excerpt of sql-bench results:
 
 TestABC DE
 --
 alter_table_add6026 88
 alter_table_drop   4315 88
 create+drop12   11   11   240  223
 create_MANY_tables 10   11   10   220  228
 create_index111 11
 create_key+drop14   15   15   231  221
 create_table000 00
 select_1_row088 89
 select_2_rows   199 99
 select_column+column199 99
 select_group_when_MANY_tables   59   1110   10
 
 
 Column A is MySQL 3.23.58
 Column B is MySQL 4.0.15
 Column C is MySQL 4.0.16
 Column D is MySQL 4.0.17
 Column E is MySQL 4.0.20
 
 
 The biggest problem is the create set.  That's a HUGE difference in the
 exact same hardware.  Thoughts?
 
 
 -J
-- 
Peter Zaitsev, Senior Support Engineer
MySQL AB, www.mysql.com




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-04 Thread Tinley, Jeremy

 On other hand B-C changes for some tests surprise me. Are the 
 results stable if you repeat the run ?  In some cases especially 
 for short tests deviation can be pretty large.


The results are stable, sadly.  The bigger surprise was the select
deviation from 3 to 4, but so far, in application testiong, it doesn't
seem to be an issue.



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-03 Thread Sergei Golubchik
Hi!

On Aug 02, Tinley, Jeremy wrote:
 We're upgrading from 3.23.58 to 4.0.20 and found that that although the
 ALTER test results of sql-bench had been greatly improved, CREATE has
 shown nasty performance degradation.  Just before needing to make the
 decision to revert back to 3.23.58, we found a post here where someone
 had a similar problem when using SAN storage.  We see the problem using
 hardware RAID, shared storage or local SCSI disks.

Yes.
Since 4.0.17 MySQL sync()'s after it created an .frm file (in
CREATE/ALTER TABLE).
As one usually doesn't create tables at the huge rate, it is not a
problem.
Unfortunately, it is apparently a problem for sql-bench :(
 
Regards,
Sergei

-- 
   __  ___ ___   __
  /  |/  /_ __/ __/ __ \/ /   Sergei Golubchik [EMAIL PROTECTED]
 / /|_/ / // /\ \/ /_/ / /__  MySQL AB, Senior Software Developer
/_/  /_/\_, /___/\___\_\___/  Osnabrueck, Germany
   ___/  www.mysql.com

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



CREATE performance degradation from 4.0.17 - 4.0.20

2004-08-02 Thread Tinley, Jeremy
We're upgrading from 3.23.58 to 4.0.20 and found that that although the
ALTER test results of sql-bench had been greatly improved, CREATE has
shown nasty performance degradation.  Just before needing to make the
decision to revert back to 3.23.58, we found a post here where someone
had a similar problem when using SAN storage.  We see the problem using
hardware RAID, shared storage or local SCSI disks.

The machine in question is a 3ghz, 4GB RAM, reiserfs.  The data and
application reside on local SCSI disks, 10k rpm. All installations are
the MySQL provided linux-binary (x86), Standard releases.

Here is an excerpt of sql-bench results:

TestABC DE
--
alter_table_add6026 88
alter_table_drop   4315 88
create+drop12   11   11   240  223
create_MANY_tables 10   11   10   220  228
create_index111 11
create_key+drop14   15   15   231  221
create_table000 00
select_1_row088 89
select_2_rows   199 99
select_column+column199 99
select_group_when_MANY_tables   59   1110   10


Column A is MySQL 3.23.58
Column B is MySQL 4.0.15
Column C is MySQL 4.0.16
Column D is MySQL 4.0.17
Column E is MySQL 4.0.20


The biggest problem is the create set.  That's a HUGE difference in the
exact same hardware.  Thoughts?


-J

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]