Subject | Re: [firebird-support] DeadlockTimeout |
---|---|
Author | Ann W. Harrison |
Post date | 2005-01-10T16:37:57Z |
casibart wrote:
explicit locking feature in 1.5. Your "Deadlock" errors should have a
secondary message, which could be "update conflict" or "conflict with
no-wait transaction". An application doesn't actually lock records,
certainly not records it has yet to update. And, in theory, when an
application crash is detected, the active transaction for that
application is marked as rolled back and its changes are undone.
That said, the crash of a remote client may take a few minutes to detect.
table after a process has waited 10 seconds for a lock. On a busy
system with long latency (e.g. a slow network), that algorithm can set
of a lot of deadlock scans. but your problem is not there, I think.
The parameter "ConnectionTimeout" is the one that should help, assuming
that your application is remote.
Regards,
Ann
>Errr, that's not really the way firebird works unless you're using the
> Today, a support system for our main database application has crashed
> without being able to update some rows. So it has locked those rows
> and some users couldn't be able to enter data for those rows
> getting "Deadlock" errors.
explicit locking feature in 1.5. Your "Deadlock" errors should have a
secondary message, which could be "update conflict" or "conflict with
no-wait transaction". An application doesn't actually lock records,
certainly not records it has yet to update. And, in theory, when an
application crash is detected, the active transaction for that
application is marked as rolled back and its changes are undone.
That said, the crash of a remote client may take a few minutes to detect.
> So I killed all firebird processesYes. Using the default value, Firebird does a deadlock scan of the lock
> (firebird CS), and everthing was fine again.
>
> There's a setting as DeadlockTimeout in the firebird.conf file. Is it
> in use by default after installing firebird?
table after a process has waited 10 seconds for a lock. On a busy
system with long latency (e.g. a slow network), that algorithm can set
of a lot of deadlock scans. but your problem is not there, I think.
The parameter "ConnectionTimeout" is the one that should help, assuming
that your application is remote.
Regards,
Ann
>