views:

58

answers:

2

hi all friends
I meet a problem yesterday. Maybe it's because it is April 1st... but it did exist.

I have 3 PCs in remote area, two clients and one oracle server. My app is running separately in the two clients, connecting hourly to the oracle database. My clients worked well before April 1st, but suddenly my app in the client machines went down.

Firstly, I did not change any configurations. I used libsqlora8 to connect to the server. I went into a dead loop in the library. I tried sqlplus, but it is dead there in my shell terminal, like it meets an infinite loop: no return until i pressed ctrl + c. The reason I guess is an "infinite loop" somewhere.

BTW, when I used my local PC to connect the server, it worked well. Just from this phenomenon, we can see the problem lies in the client machine. I checked the configuration file both in local machine and client machines -they are identical

Have you met a problem like this? I hope it's not due to April 1st.

A: 

First off, a herd of whismsically coloured unicorns did not stampede through your cluster and trash your configuraation. So it is unlikely your application died because yesterday was April Fools' Day.

So, does your app have some logging or trace enabled? If so, is there anything in the logfiles? Is there anything in the server's Alert Log? Or other trace file in the dump directories?

When you say you could connect from your local PC how are you connecting? SQL*Plus? Have you tried connecting to the server and running SQL*Plus from there? If so, what happens?

APC
A: 

Most likely, some important table is locked. You need to find and kill the owner session of the lock. There are numerous articles on resolving oracle locks.

Also, if you have an enterprise mananager DB Console installed, you can use it - on Performance tab, use Instance locks or Blocking sessions link.

Juraj