Subject | What can cause "Transaction start failed. deadlock" in Firebird 2.0.3? |
---|---|
Author | Antti Nivala |
Post date | 2008-08-26T15:55:05Z |
On a production server, we ran into a situation where all attempts to
start a new transation returned the following error:
"Transaction start failed. deadlock"
The server was running Firebird 2.0.3.12981 (embedded). Our server
process has several background threads, and all of them had started to
fail with this error at the start of each operation. I cannot say
whether or not there were other transactions in progress. It is
certainly possible that there were, but I do not understand how it
became impossible to start _any_ new transactions. The new transactions
would have been normal "repeatable read" transactions. The error was
returned from the "start transaction" call. There was no SQL statement
involved yet (other than "BEGIN TRANSACTION" or something like that).
Since this is a production server, the server process had to be shut
down and restarted pretty quickly and we could not gather any additional
information for troubleshooting. After restarting the process,
everything was fine again.
I'd be interested in knowing what are the likely causes of this kind of
problem. If the server is running low on memory, can this occur? Or,
does this indicate a bug in Firebird? Any such known bugs? Something
else?
Best regards,
Antti Nivala
------------------------------------------
Motive Systems
http://www.motivesys.com
start a new transation returned the following error:
"Transaction start failed. deadlock"
The server was running Firebird 2.0.3.12981 (embedded). Our server
process has several background threads, and all of them had started to
fail with this error at the start of each operation. I cannot say
whether or not there were other transactions in progress. It is
certainly possible that there were, but I do not understand how it
became impossible to start _any_ new transactions. The new transactions
would have been normal "repeatable read" transactions. The error was
returned from the "start transaction" call. There was no SQL statement
involved yet (other than "BEGIN TRANSACTION" or something like that).
Since this is a production server, the server process had to be shut
down and restarted pretty quickly and we could not gather any additional
information for troubleshooting. After restarting the process,
everything was fine again.
I'd be interested in knowing what are the likely causes of this kind of
problem. If the server is running low on memory, can this occur? Or,
does this indicate a bug in Firebird? Any such known bugs? Something
else?
Best regards,
Antti Nivala
------------------------------------------
Motive Systems
http://www.motivesys.com