Consultor Eletrônico



Kbase P37362: Error (4229) and (1124) generated by a Read Only client connected to a multi-user database
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   2/23/2010
Status: Verified

SYMPTOM(s):

Error (4229) and (1124) generated by a Read Only client connected to a multi-user database

Progress client has connected to the database with the -RO parameter

SYSTEM ERROR: wrong dbkey in block. Found <dbkey>, should be <dbkey2> (1124)

Corrupt block detected when reading from database (4229)

FACT(s) (Environment):

All Supported Operating Systems
Progress 9.x
OpenEdge 10.x

CAUSE:

There are other users connected to the same database that are updating the database. Because the user who is started with the -RO parameter does not use the same locking mechanisms and buffer pool, the Read Only user has tried to access data that may not be completely intact.

From the Progress Startup Command and Parameter References manual, for the -RO parameter it says:

If you use the -RO parameter when other users are updating the database, you might see invalid data, such as stale data or index entries pointing to records that have been deleted.

A read-only session is essentially a single-user session. Read-only users do not share database resources (database buffers, lock table, index cursors). However, unlike a normal single-user database, a read-only database can be simultaneously accessed by multiple -RO users.

FIX:

Either:

1. Only have -RO users accessing the database.
2. Remove the -RO parameter from all users connecting to this database.