>i am running an Oracle database under sco Unix 3.2.2 and using SQL*NET TCP/IP
> If a user get trown out(PowerFailure,computer crash) the TCP/IP process
> stays there for ever, i have to go kill it manually..
>is there anything that look for those process and kill them when they are idle?
As far as I know, the latest SQL*Net TCP/IP that comes with Oracle V6.0.33
on SCO Unix will enable the KEEPALIVE option on network connections. The
problem is that SCO and other TCP/IP vendors have set up things in such a
way that it will take TCP/IP about two hours to finally decide that a
connection has been lost (keepalive wars still come up from time to time
under comp.protocols.tcpip -- I hope it doesn't spread here). As long as
TCP/IP thinks things are well, Oracle will happily wait for the next SQL
statement to come in from the client. Once TCP/IP closes the connection,
the Oracle shadow process on the SCO side should die and eventually PMON
will go around and clean up any internal Oracle resources held by that
There's nothing that can really be done about this at the Oracle level yet.
However, I do think the V6 tools on the PC side do a better job of giving
the Oracle server better information to show in the SQLDBA MONITOR screen.
Many Unix 'auto-logout' programs that go out and kill idle processes tend
to rely on looking at the tty associated with a process. Since the Oracle
shadow is a detached process, they are not seen by the program. Of course,
I haven't read those programs very carefully yet either.