Consultor Eletrônico



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.