I have a client who is using a third party application to attach to an Oracle database. Recently the user has described a problem where the machine disconnects (or appears to do this) periodically. Looking in the application logs I see ORA-00028 errors. What situations can this occur besides someone intentionally disconnecting them by killing the session on the server?
It turned out that the system admin had setup a script to look for transactions which were taking too long and it killed the session. I presume this was to keep it from appearing that the application was locked up during a long running SQL. What are other ways developers accomplish this? Aren't there timeouts which will just abort the transaction without killing the session (which means the user has to exit the app and re-enter)?