OnLine6.0 Locking BUG !HELP!
Posted in 1995
Topics: Error Codes & Troubleshooting, Transactions, Locking & Isolation, Jobs, Consulting & Announcements
Informix On-Line 6.00 and higher database servers seam to have a problem with
update cursor used for locking. First an update cursor is used to lock a
key valued row at the beginning of a transaction. Followed by any number
(usually 10 - 20) of inserts,updates,deletes to other tables (subsidiary)
followed by a commit work statement. The commit work statement may fail,
usually when a larger number of users is using the system, with the following
error:
SQL statement error number -246.
Could not do an indexed read to get the next row.
SYSTEM error number -154.
ISAM error: Lock Timeout Expired
Informix Tech Support latest response has been that this is standard for the
6.00 and higher engines. What is happening is that 6.00 and higher engines are
using adjacent row lock to correct some of the problems they were having with
older versions of ON-Line. Tech Support seemed to believe that this was done
to decrease the limitations on insert but did nothing to correct the problems
with update, or delete.
Informix work around suggestion was to commit work more often. This is not a
very good idea since we are depending on row locking a means to eliminate
cocurrency issues. If anyone has see this problem before and as found a work
around strategy, any input would be greatly appreciated.
Russ Kahler
Program/Consultant
on!contact Software