I have a problem with an Oracle 11g instance. Every connection that has been idle for about 20 minutes are lost. I get the following error

ORA-03135: connection lost contact

I did the following actions to get rid of it:

  • Changed the value os the IDLE_TIME in DEFAULT profile to UNLIMITED
  • Checked the TIMEOUT parametes in sqlnet.ora. There are no one setted
  • Checked the TIMEOUT parametes in listener.ora. There are no one setted

This problem only happens remotely.

What more I can do?


  • 3
    If it only happens remotely it's unlikely to be Oracle's fault. You need to talk to your sysadmins; it can be the server dropping idle connections or maybe some special firewall/proxy settings. – Ben Feb 19 '14 at 13:48
  • 2
    It will be a firewall problem, as @Ben said. – Philᵀᴹ Feb 19 '14 at 16:18
  • How can i check if firewall is killing the sessions? – Francisco Reis Feb 21 '14 at 12:49

Add the option ENABLE=BROKEN into tnsnames.ora. This will enforce sending TCP Keepalive packets over TCP connection. These keepalives are not sent by Oracle client but by OS Kernel directly.

Then you must configure your TCP stack. Set TCP sending interval to value lower than 20 minutes.

Most probably you have a FW on the path and this FW drops tracking information for every in-active TCP connection.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.