Consultor Eletrônico



Kbase P39558: Error 3718 on disconnect of dead client by Watchdog
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/28/2008
Status: Verified

SYMPTOM(s):

Error 3718 on disconnect of dead client by Watchdog

Disconnecting dead user <number>. (2527)

SYSTEM ERROR: mtlkmux <latch-num>, holding <lock>. (3718)

FACT(s) (Environment):

Windows 2000
Progress 9.1D
Progress 9.x
OpenEdge 10.x

CAUSE:

The 2527 indicates that a self-service client shut down their Progress session incorrectly, e.g. with a kill -9 on UNIX or with the Task Manager on Windows.

Watchdog runs and detects that the self-service client is no longer active, so it tries to release all the appropriate record locks, back out any active transactions and release any shared memory locks. That is its function.

The 3718 error indicates that Progress was trying to acquire a shared memory lock while holding one or more shared memory lock(s). It was trying to do this as part of the cleanup process.

Some combinations of shared memory locks seem to be not legal, so the code does a sanity check before acquiring the new lock in order to make sure that we are not trying to do something wrong; in this case the sanity check failed, and error 3718 was produced.

At times the shared memory locking might be in a condition such that the watchdog will notify the broker to bring the database down. This is what happened here.

FIX:

Instruct users not to kill their Progress sessions with e.g. kill -9 on UNIX or with the Task Manager on Windows.