Symptoms
nt secondary err code: 110 Monitoring of the 11g
database Alert log(s) may show frequent timeout related messages
such as:
- On Oracle Solaris:
***********************************************************************
Fatal NI connect error 12170.
VERSION INFORMATION:
TNS for Solaris: Version 11.2.0.1.0 - Production
Oracle Bequeath NT Protocol Adapter for Solaris: Version 11.2.0.1.0
- Production
TCP/IP NT Protocol Adapter for Solaris: Version 11.2.0.1.0 -
Production
Time: 22-JAN-2011 21:48:23
Tracing not turned on.
Tns error struct:
ns main err code: 12535
TNS-12535: TNS:operation timed out
ns secondary err code: 12560
nt main err code: 505
TNS-00505: Operation timed out
nt secondary err code: 145
nt OS err code: 0
Client address:
(ADDRESS=(PROTOCOL=tcp)(HOST=10.159.34.117)(PORT=1092))
---------
The "nt secondary err code" will be different based on the
operating system.
Linux x86 or Linux x86-64: "nt secondary err code: 110"
HP-UX Server: "nt secondary err code: 238"
AIX: "nt secondary err code: 78"
Changes
No change are necessary, but may have recently upgraded the
database to 11g release 1 or higher, or installed a new Oracle11g
database.
Note: Prior to 11gR1 these same 'Fatal NI connect error 12170' are
written to the sqlnet.log
Cause
These time out related messages are mostly informational in
nature. The messages indicate the specified
client connection (identified by the 'Client address:' details) has
experienced a time out. The 'nt secondary err
code' identifies the underlying network transport, such as (TCP/IP)
timeout limits after a client has abnormally terminated the
database connection.
The 'nt secondary err code' translates to underlying network
transport timeouts for the following Operating Systems:
For the Solaris system: nt secondary err code: 145:
ETIMEDOUT 145
For the Linux operating system: nt secondary err code: 110
ETIMEDOUT 110 Connection timed out
For the HP-UX system: nt secondary err code: 238:
ETIMEDOUT 238
For AIX: nt secondary err code: 78:
ETIMEDOUT 78
For Windows based platforms: nt secondary err code: 60 (which
translates to Winsock Error: 10060)
Description: A connection attempt failed because
the connected party did not properly respond after a period of
time, or established connection failed because connected host has
failed to respond.
The reason the messages are written to the alert log is related to
the use of the new 11g Automatic Diagnostic Repository (ADR)
feature being enabled by default. See (Doc ID
454927.1).
Solution
Suggested Actions:
- Search the corresponding text version of the listener log located
on the database server for the corresponding client connection
referenced by the Client address details referenced in the alert
log message.
For the message incident below you would search the listener log
for the 'Client address' string:
(ADDRESS=(PROTOCOL=tcp)(HOST=10.159.34.117)(PORT=1092))
The search of the listener log should find the most recent
connection before the time reference displayed in the alert log
message, e.g. '22-JAN-2011 21:48:23'.
-Corresponding listener log entry:
22-JAN-2011 21:20:12 *
(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=AMN11264.us.oracle.com)(CID=(PROGRAM=D:appmcassadyproduct11.2.0dbhome_1insqlplus.exe)(HOST=mcassady-lap)(USER=mca
ssady))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.159.34.117)(PORT=1092))
* establish * AMN11264.us.oracle.com * 0
- Alert log entry:
------------
Fatal NI connect error 12170.
VERSION INFORMATION:
TNS for Solaris: Version 11.2.0.1.0 - Production
Oracle Bequeath NT Protocol Adapter for Solaris: Version 11.2.0.1.0
- Production
TCP/IP NT Protocol Adapter for Solaris: Version 11.2.0.1.0 -
Production
Time: 22-JAN-2011 21:48:23
Tracing not turned on.
Tns error struct:
ns main err code: 12535
TNS-12535: TNS:operation timed out
ns secondary err code: 12560
nt main err code: 505
TNS-00505: Operation timed out
nt secondary err code: 145
nt OS err code: 0
Client address:
(ADDRESS=(PROTOCOL=tcp)(HOST=10.159.34.117)(PORT=1092))
------------
Note the time of the client corresponding client connection(s) in
the listener log. Here you may find a particular
client, set of clients or particular applications that are
improperly disconnecting causing the timeout errors to be raised
and recorder in the database alert log.
You may choose to revert from the
new Automatic Diagnostic Repository (ADR) method
to prevent the Oracle Net diagnostic details from being written to
the alert log(s) by setting the following Oracle Net
configuration parameters:
To revert to Oracle Net Server tracing/logging, set following
parameter in the server's sqlnet.ora :
DIAG_ADR_ENABLED = OFF
Also, to back out the ADR diag for the Listener component, set
following parameter in the server's listener.ora:
DIAG_ADR_ENABLED_ = OFF
- Where the would be replaced
with the actual name of the configured listener(s) in the
listener.ora configuration file. For example, if
the listener name is 'LISTENER', the parameter would read:
DIAG_ADR_ENABLED_LISTENER = OFF
-Reload or restart the TNS Listener for the parameter change to
take effect.
<!-- 正文结束 -->
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22066936/viewspace-1116800/
,如需转载,请注明出处,否则将追究法律责任。