Hi!

The timeout in Innobase deadlock resolution is configurable in my.cnf
file: you will be able to set it in units of one second (or would someone
need an even greater precision?).

In the future we might modify the MySQL code so that Innobase gets
the information of MySQL LOCK TABLES commands before MySQL tries to set
the locks. Then Innobase will be able to detect these deadlocks
immediately and roll back the transaction. In this case we could also
allow a user to issue several consecutive LOCK TABLES commands without
the need to call UNLOCK TABLES between these. Currently, in MySQL
you must call UNLOCK TABLES before issuing another LOCK TABLES, because
there is no deadlock detection in MySQL itself.

The MySQL mailing list is currently the only place to discuss the Innobase
table handler. You can also send me email directly, I will be happy to reply!

Regards,

Heikki Tuuri
Innobase Oy

At 04:45 AM 2/11/01 +0100, you wrote:
>Hi.
>
>On Fri, Feb 09, 2001 at 05:34:38PM +0200, you wrote
>[...]
>> 5. Add a timeout to lock waiting: Innobase can detect and resolve deadlocks
>> within its own lock table, but if a user uses also MySQL LOCK TABLES... or
>> BDB locks, a deadlock can occur where Innobase does not know of all the
>> locks: this is resolved by adding a timeout for a lock wait, say 100 s.,
>> after which the transaction is rolled back.
>
>Maybe I misunderstand this point: But a 100 secs timeout (in worst
>case of a deadlock) would be absolutely inacceptable within my
>applications. :-/
>
>I mean, okay, if I am going to block a table for 100 secs, that's my
>problem. But it sounds as if the handler waits 100 secs before it
>"solves" a dead-lock condition by failing.
>
>Is there a better mechanism planned for later? At least one should be
>able to change the timeout (I would set it below 5 seconds...).
>
>Bye,
>
>        Benjamin.
>
>
>PS: If there is a better place to discuss the Innobase table handler
>for MySQL, let me know.
>
>


---------------------------------------------------------------------
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