Bug #33474 falcon_lock_timeout is different from innodb_wait_lock_timeout
Submitted: 22 Dec 2007 0:02 Modified: 3 May 2008 1:23
Reporter: Kevin Lewis
Status: Closed
Category:Server: Falcon Severity:S3 (Non-critical)
Version:6.0 OS:Any
Assigned to: Kevin Lewis Target Version:
Tags: timeout
Triage: D4 (Minor)

[22 Dec 2007 0:02] Kevin Lewis
Description:
falcon_lock_timeout is different from innodb_wait_lock_timeout in some unnecessary ways;

1. The name is missing 'wait'.  This can be easily changed.
2. innodb_wait_lock_timeout is in seconds. falcon_lock_timeout is in milleeconds.  This
will catch unsuspecting users and cause extra 'duplicate key' and 'record updated' errors
if the falcon value is set to the innodb value.  The Falcon lock timeout should be in
seconds as well.

Other differences like the default value and the requirement of a non-zero value are
engine specific and justifiable.  Innodb defaults to 50 and does not allow zero.  Falcon
defaults to zero which means no limit on how long a lock will wait.

How to repeat:
SHOW VARIABLES LIKE 'FALCON_LOCK_TIMEOUT';
SHOW VARIABLES LIKE 'INNODB_WAIT_LOCK_TIMEOUT';

Suggested fix:
Rename FALCON_LOCK_TIMEOUT to FALCON_WAIT_LOCK_TIMEOUT.
Change2. FALCON_LOCK_TIMEOUT to register number of seconds.
[22 Dec 2007 21:34] Miguel Solorzano
Thank you for the bug report.
[27 Dec 2007 6:28] Kevin Lewis
falcon_lock_timeout is replaced by falcon_lock_wait_timeout 
which is now in seconds, not milliseconds
This makes the setting more similar to innodb_lock_wait_timeout.
Also, since the name has changed, existing scripts will not be 
left inadvertently referring to milliseconds instead of seconds.  
All engine starting scripts will have to change.
It is important to make this change before Beta.

In addition, Bug#33072 requires that the default value of zero
(no timeout) be changed to 50 seconds.
[11 Feb 2008 21:42] Kevin Lewis
Patch is in mysql-6.0-falcon-team and mysql-6.0-release version 6.0.4
[13 Mar 2008 0:02] Bugs System
Pushed into 6.0.4-alpha
[3 May 2008 1:23] Paul DuBois
Noted in 6.0.4 changelog.

The falcon_lock_timeout system variable, which had a value in
milliseconds, has been replaced with falcon_lock_wait_timeout, which
has a value in seconds. The default value of falcon_lock_wait_timeout
is 50 seconds. This has been done for better name and unit 
consistency with the innodb_lock_wait_timeout system variable. Uses
of the old variable should be converted to use the new variable.