Dead Connection Detection is ... dead?
- From: Mark Anderson <fnmpa@xxxxxxx>
- To: oracle-l@xxxxxxxxxxxxx
- Date: Fri, 13 Oct 2006 14:56:05 -0800
My apparent problem is that my server is not sending DCD probe packets
to my client even though SQLNET.EXPIRE_TIME=1 in
Oracle server is 10.1.0.5.0 on Red Hat EL release 3 Oracle client is 10.2.0.1.0 on Fedora Core release 3
Between client and server is a router which is deliberately configured to close any connection which is idle for longer than a configured length of time (presently 70 seconds, although this is negotiable).
To keep the connection open by ensuring there was activity on the connection every 60 seconds I added the following lines to $OH/network/admin/sqlnet.ora:
SQLNET.EXPIRE_TIME=1 TRACE_LEVEL_SERVER=16 TRACE_DIRECTORY_SERVER=/home/oracle
Trace files started to appear in /home/oracle. Most, but not all, contained a line like:
[13-OCT-2006 21:29:44:296] niotns: Enabling dead connection detection (1 min)
and lines like
[13-OCT-2006 21:29:44:309] nstimini: entry [13-OCT-2006 21:29:44:309] nstimig: entry [13-OCT-2006 21:29:44:309] nstimig: normal exit [13-OCT-2006 21:29:44:309] nstimini: initializing LTM in asynchronous mode [13-OCT-2006 21:29:44:309] nstimini: normal exit [13-OCT-2006 21:29:44:309] nstimstart: entry
Which are described in Note 151972.1 "Dead Connection Detection (DCD) Explained" as evidence that DCD is enabled. The trace files without these lines were very short.
I opened a connection to the server from the client (which was otherwise idle) using a Oracle DBI script that did nothing but log in and sleep at the client. Our network admin monitoring the router could see the connection appear between the client host and port 1521 of the server host and the 70-second clock start to tick. It counted down to 0 without resetting, from which I infer that no DCD probe packets were sent from the server to the client. Is this inference reasonable? If it is, does anyone know why the DCD probe packets weren't sent?
Thanks in advance,