Kbase P30342: Abnormal database shutdown after errors 3712 on a SQL-92 server
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  23/09/2009 |
|
Status: Verified
SYMPTOM(s):
Abnormal database shutdown after errors 3712 on a SQL-92 server
SYSTEM ERROR: mtlatch <latch-num>, holding <lock>. (3712)
Database log also show 4GL servers releasing multiplexed latch with erorr 5029 and 2522
SYSTEM ERROR: Releasing multiplexed latch. latchId:<latch-num> (5029)
User <num> died holding <num> shared memory locks. (2522)
Stack trace from _mprosrv reads:
dbut_stlen
dbut_utapath
shmcrseg
stmGetbk
stGetDirty
stGet
lkgetlocks
lklocky
lkrglock
rmUpdateRecord
rmUndoLogicalDelete
rlundo
rlrej
tmrej
nsadoctl
nsaloop
doserve
mainCRTStartup
Stack trace from _sqlsrv2 reads:
latlatch
stGetDirty
stGet
lkgetlocks
lklocky
BROKER detects death of server <pid>. (1153)
SYSTEM ERROR: User died during microtransaction. (2256)
SYSTEM ERROR: Releasing regular latch. latchId:<latch-num> (5028)
SYSTEM ERROR: Releasing regular latch. latchId:5 (5028)
SYSTEM ERROR: Releasing regular latch. latchId:7 (5028)
Disconnecting dead server <number>. (2525)
Disconnecting client <number> of dead server <number>. (2526)
Begin ABNORMAL shutdown code (2249)
FACT(s) (Environment):
Progress 9.1D05
All Supported Operating Systems
Progress 9.1D
CAUSE:
Bug # OE00086801
CAUSE:
Run out of lock table entries during a transaction backout and the server went to allocate another lock table entry from free shared memory so that it could complete the backout.
There was no more free shared memory initially allocated by the broker so the server dies.
On Unix, this error should be proceeded by a log message and the server should die without brining down the database.
On Windows, had some other problems which would cause the database to shutdown due to a latch being held, the server will still come down but a message will be printed in the .lg file and the database should continue running.
FIX:
Upgrade to Progress 9.1D06 or OpenEdge 10.0A or later.
If upgrade is not possible, as a workaround, increase the -L startup parameter.