Subject updates locking up
Author Gerald Krafft
One of our systems is using Interbase 6 Classic Server (the open source
version) on a dual processor Linux machine and we recently experienced
problems where updates seem to lock each other. It is a very busy system
with constant reads and updates and some of the updates happen in
relatively long transactions (up to a few seconds). But in the last few
weeks we had several occasions were all updates would lock up for
several minutes (reads are fine) so that we usually had to restart the
application server that uses the database. I did notice that sometimes
the locked updates finish after a few minutes and they then all complete
at the same time.
When the updates locked up we did not get any deadlock exceptions from
the database nor did I find any errors in the interbase.log (apart from
some INET/inet_error: read errno = 104 which we get a few over time). So
it does not seem to be a resource problem (semaphores etc., enough
memory to keep all instances of Interbase in memory).

Has somebody experienced similar problems on other systems or can give
some advice to why these updates might lock up and what to do to solve

All I can think of to solve this is to may be change the page size from
8kB down to 4kB and may be split some of the update transactions into
two parts where this is possible.