Re: Informix-SE transaction logging
Posted in 1998
In article <35DAD6FC.6181@bayer.co.uk>, Peter Lancashire <Peter.Lancashi
re.PL1@bayer.co.uk> writes
>Tony Desborough wrote:
>>
>> Hi,
>>
>> We are attempting to use transaction logging on Informix Standard Engine
>> Version 7.22.UC1 (HP/UX 10.x) and are running into trouble. We enabled
>> logging on one of a number of active databases. Everything was fine
>> for the first two weeks and then during a real busy period, we started
>> getting the errors below.
>>
>> Error 1
>> =======
>> User:pam
>> Date: 06/08/1998 Time: 14:17:37
>> Program error at "srl_crmic.4gl", line number 458.
>> SQL statement error number -240.
>> Could not delete a row.
>> SYSTEM error number -121.
>> ISAM error: cannot write log record>>
Check number of locks. Lock the table in exclusie mode first or
commit more often.
>> -240 Could not delete a row.
>> The database engine is unable to finish execution of a DELETE
>> statement. Roll back the current transaction; then check the
>> accompanying ISAM error code for more specific information.
>>
>> -121 ISAM error: cannot write log record
>> The ISAM processor is trying to add a record to the transaction log
>> and has received an error from the operating system. One probable
>> cause is that the disk is full. Look for operating system error
>> messages that may give more information. The transaction log file
>> can grow quite large. In order to reduce its size you must do two
>> things. First, make a backup copy of the data file (C-ISAM) or all
>> database files (SQL). Second, make the transaction log file an empty
>> file. If these steps are performed routinely, the size of the log file can
>> be controlled.
>>
>> Comments
>> --------
>> The log file was 10meg approx with 80meg free in the partition. We thought
>that
>> ulimit may be the problem, but we checked the ulimit on the user who created
>> the error, which was unlimited. What other causes could it be?
>>
>> What we also cannot fathom is why this has not been a problem for two weeks.
>> Is transaction logging stable on SE? Are there Unix/Informix configuration
>> issues which need to be addressed specifically for transaction logging?
>>
>> What is really inexplicable is that at the same time, other non-logging
>> databases were affected with error 2 (shown below). Are they related?
>>
>> At present, we have had to switch off transaction logging and now everything
>> is running smoothly again. However, the prospect of writing cleanup code in
>all
>> my 4GL source, instead of using transaction handling is pretty undesirable.
>>
>> Error 2
>> =======
>> User:pam
>> Date: 06/08/1998 Time: 11:01:38
>> Program error at "srl_utils.4gl", line number 1328.
>> SQL statement error number -261.
>> Cannot create file for table (pam.temp_query).
>> SYSTEM error number -45.
>> Operation not supported on socket
>>
>> -261 Cannot create file for table (tablename).
>> The database engine is unable to create the file that will represent
>> this table. Check the accompanying ISAM error code for more
>> information. The file would be created in the database.dbs directory
>> (unless you supplied an IN pathname clause). Its filename would
>> begin with the first few letters of tablename, followed by a three-digit
>> number and the suffix .tbl. The most likely cause for the error is
>> some problem with file permissions; or possibly the disk is full.
>>
>> -45 Operation not supported on socket
>> An operating system error code with the meaning shown was
>> unexpectedly returned to the database engine. If the error recurs,
>> note all the circumstances and contact Informix Technical Support.
>>
>> Comments
>> --------
>> The system was modified so as not to use tcp sockets to access the database,
>> which apparently overcame this error. The Unix kernel was also amended to
>> increase the number of locks, preventing users locking each other out.
>>
>> Any help would be greatly appreciated.
>>
>> Thanks in advance.
>> Tony
>The "real busy period" is a clue. Do you have enough open files
>available to the system and to each user process? Check the Unix kernel
>parameters.
--
David Williams
Maintainer of the Informix FAQ
Primary site (Beta Version) http://www.smooth1.demon.co.uk
Official site http://www.iiug.org/techinfo/faq/faq_top.html
I see you standin', Standin' on your own, It's such a lonely place for you, For
you to be If you need a shoulder, Or if you need a friend, I'll be here
standing, Until the bitter end...
So don't chastise me Or think I, I mean you harm...
All I ever wanted Was for you To know that I care