Kbase P135397: When connecting to DB in client server mode, process hangs indefinitely
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  06/02/2009 |
|
Status: Unverified
SYMPTOM(s):
When connecting to DB in client server mode, process hangs indefinitely
No error messages returned
Shared memory connection works, but not client networking
FACT(s) (Environment):
DB was stopped and restarted and the problem went away
Linux x86 64-bit
OpenEdge 10.1B03 Service Pack
OpenEdge Category: Database
CAUSE:
The exact cause is unknown at the time of this writing.
FIX:
To try and identify the root cause of the issue, run the following checks:
Check the DB log file whether a user terminated abnormally. This will cause the DB connection to be improperly flushed after a user terminates abnormally, which will generate the error witnessed.
Check that the DB connection settings and arguments for client network connections are correctly set.
Check the memory usage of the Server in the time leading up to the time of the first errors, and the OS event log to rule out that something abnormal is happening on the OS/Network level.
To resolve the problem, try the following:
Restart the primary DB broker and run the command "prowdog <db-name>". This will clean after improperly terminated processes such as releasing locks and shared-memory structures. If the lost process is a server, it will disconnect and and clean up all the appropriate remote clients. The Watchdog cannot detect lost remote clients because remote clients are not associated with a process. Instead, a network protocol timeout mechanism notifies the server that the network connection was lost.
If prowdog does not fix the issue, more information must be gathered about the problem itself. Write a script that runs PROMON with options 1, 2, 3 and 4. This will help you identify where the problem is coming from, or where the potential problem areas are.
To restart the DB, write a script that does a PROSHUT and PROSERVE to shut down and startup the DB, but that will also perform additional tasks such as DBTOOL to check for the integrity of the DB.