Hi!

Is it so that your test inserts, updates, and deletes
rows at random? Can these rows overlap? Do you have big
transactions?

If the above are true, you will inevitably get a lot
of deadlocks and rollbacks. Real-world applications
should be written in a way that deadlocks cannot occur,
or they are rare. One method is to access tables and rows
in a fixed order. In MyISAM you cannot get deadlocks
because there every SQL statement is a single transaction
and MyISAM locks all the tables involved in the statement
before starting the processing (this kind of all-at-once
locking is called 'conservative locking' in literature).

Regards,

Heikki
http://www.innodb.com

At 03:01 PM 7/10/01 +0300, you wrote:
>Content-Type: message/rfc822
>Content-Description: forwarded message
>Content-Transfer-Encoding: 7bit
>
>Subject: InnoDB behaviour with multiple clients
>From: Denis Pithon <[EMAIL PROTECTED]>
>To: [EMAIL PROTECTED]
>Date: 10 Jul 2001 10:51:40 +0200
>
>Hi all,
>
>I begin to validate MySQL with InnoDB on our platform. I use a DBI perl
>test which manages a data pool reflecting exactly the rows stored in DB.
>This test internally builds some new data to insert and chooses rows to
>delete and update (the tables are chosen randomly). Then all these
>operations are executed in one transaction. If it fails, a rollback is
>executed in DB and in client memory. Client also check that all data in
>its pool are in the DB. That's my test...
>
>It works very well with one client, but with two... things become
>harder! clients received many 'Table handler error 1000000' and slow
>down terrifically. 
>
>I try the same test with 3 clients on MyISAM tables and there is no
>noticeable problems.
>
>I have reduced number of queries per transaction. I have changed
>innodb_unix_file_flush_method to O_DSYNC. I have increased buffer pool
>size and log buffer size but I noticed onlky small improvements. I'm
>sure I forgot something, but I don't see what ! does somebody know ??
>
>Denis
> 
>-- 
>Denis Pithon                             phone  +33 (0) 1 41 40 02 13   
>Software Engineer                        fax    +33 (0) 1 41 40 02 01   
>Lineo High Availability Group            mail   [EMAIL PROTECTED]
>
>
>---------------------------------------------------------------------
>Before posting, please check:
>   http://www.mysql.com/manual.php   (the manual)
>   http://lists.mysql.com/           (the list archive)
>
>To request this thread, e-mail <[EMAIL PROTECTED]>
>To unsubscribe, e-mail <[EMAIL PROTECTED]>
>Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
>
>
>Content-Type: text/plain; charset=us-ascii
>Content-Description: .signature
>Content-Transfer-Encoding: 7bit
>
>
>-- 
>Regards,
>   __  ___     ___ ____  __
>  /  |/  /_ __/ __/ __ \/ /    Mr. Sinisa Milivojevic <[EMAIL PROTECTED]>
> / /|_/ / // /\ \/ /_/ / /__   MySQL AB, FullTime Developer
>/_/  /_/\_, /___/\___\_\___/   Larnaca, Cyprus
>       <___/   www.mysql.com
>


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to