Re: latch problem
Posted in 1996
In article <545792$4ao@zenacomp.zenacomp.com>, Stefanie Vario <svario@zenacomp.zenacomp.com> writes >Hello everyone, > >I have a client who is on a Sun Sparc 2000 running SunOS 5.X (I believe) and >Informix 5.03.UC1. The engine keeps coming down on a latch error. They get >the message "Process aborted abnormally (latch). Online must Abort." in >their message log. > >They get to their application via a Windows terminal emulation package using >a modem. When they login to the Sun, they automatically get put into a >4GL program that displays a menu. When they're finished with their work, they >just exit out of the terminal emulation program which hangs up the modem. >At the time of the hangup, they're still in the 4GL program. Many times this >will cause the engine to come down on the latch error. We've put code into >the 4GL program to trap for various kill signals and found that the 4GL >is getting a kill -1 which should not be bringing the engine down. We've also >added code to do an "sqlbreak() and sqlexit()" when it receives some of these >kill signals so that it can (hopefully) do some cleanup but it doesn't seem >to help. > The 4GL is in the middle of a transaction when it exists hence it is still holding a latch on the area of shared memory which is being updated. The 4GL will recieved signal 1 (SIGHUP) when the users disconnect which is the way UNIX indicates that the terminal line has hangup the connection. Add code to call the following function when it receives a SIGHUP signal (signal number 1) :- FUNCTON FN_exit_program() WHENEVER ERROR CONTINUE ROLLBACK WORK EXIT PROGRAM END PROGRAM >We've already tried to tell the users to exit out of the 4GL program first, >but many times they forget. There's about 200-250 users on at any one time. > >Next, we're going to try to do a kill -13 on the associated sqlturbo when we >get this kill -1 signal. > >Does anyone have any other suggestions or recommendations? > >Thanks in advance. > >Stefanie > -- David Williams