0

I am seeing that the netstat -oe command shows that the column Recv-Q has some values in it long after the process that created it terminated. This connection is between IBM MDM Server (v10) and Oracle DB (v11). We have been running into the problem where Oracle is running out of processes on its side and the below data is on the IBM MDM server side. I am trying to debug this issue and I see that the netstat -oe command shows as below.

Proto Recv-Q Send-Q Local Address               Foreign Address             State       User       Inode      Timer 
tcp     9540      0 mdmserver.com:39233  dbserver.ncube-lm ESTABLISHED mdmuser    24887363   off (0.00/0/0)
tcp     2690      0 mdmserver.com:38866  dbserver:ncube-lm ESTABLISHED mdmuser    25816552   off (0.00/0/0)
krish727
  • 303
  • 1
  • 3
  • 11
  • If some of those boxes running Windows? Use google and search for "ENABLE=BROKEN". This stanza in tnsnames.ora will enable TCP-keepalive on Oracle connection. Even if MDM was running on Java it it be set up for JDBC connections(but it is much harder). Generally your problem is called DCD (Dead Connection detection). – ibre5041 May 18 '15 at 06:05
  • PS: there is non-zero value for Recv-Q and nestat seem to be executed on client side. This means that MDM application did not withdraw some data from kernel buffer. Is it possible that the application got stucked somehow? Try to attach debuger(or pstack) to it and check it's stacktrace (where it it hanging). – ibre5041 May 18 '15 at 06:09
  • Thanks for the reply. All are on Linux. MDM maintains a pool of Oracle connections and for some reason the socket connections on Oracle side are getting exhausted. I will see how I can stacktrace it. – krish727 May 18 '15 at 13:25

0 Answers0