The database version was of Oracle 10.2.0.1 running on Linux RHEL 4..The listener seemed to be in hung state and moreover there were no errors in the listener log file.
I don’t know what came to my mind I thought of checking the listener process using the ps command. I was surprised to see a child process forked automatically with the same name of the current listener.
$ ps -ef |grep tns
oracle 2310 1 0 Jul 17 ? 72:00 /oracle/ora10g/db/bin/tnslsnr oprem -inherit
oracle 6573 2310 0 14:19:23 ? 0:00 /oracle/ora10g/db/bin/tnslsnr oprem –inherit
I killed the child process and then reloaded the listener. Phew!!...it worked.The users were able to connect to the database now.
Later I found that this is an Oracle bug (No.4518443).
Some of the possible solutions for the above problem are:
1. Kill the child process using kill command and then reload the listener process.
2. Add the following parameter in the listener.ora file and restart the listener process.
SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER_NAME
Where listener_name is the listener name (here it would be oprem)
3. Apply Patch.
4. Rename the ons.config file and restart the listener. (path:$ORACLE_HOME/opmn/conf)
This problem is fixed in 10.2.0.3
Note: If you add the above parameter for a listener.ora in RAC setup, then Fast Application Notification (FAN) will not work.
For patch and more details on this refer to metalink note: 340091.1
Hope this was useful to you guys.
5 comments:
Hi Yadu,
Even i used to get this issue.. But never thought of this behavior of oracle..
Thanks a lot!!
Cool stuff yadu...keep going.
nice job man.. keep it up!!!
Hi Yadu,
I thank you so much for your postings
Hari
impressive!!!
Post a Comment