Consultor Eletrônico



Kbase P11419: 4GL: User unable to get a record that has been modified by another user
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/15/2011
Status: Verified

SYMPTOM(s):

4GL: User unable to get a record that has been modified by another user

User 1 updates record and User 2 reads the same record

User 1 modified the record in a DO TRANSACTION block

User 2 unable to see the changes made by User1 if he uses FOR EACH NO-LOCK to the same database table

FACT(s) (Environment):

User 2 is able to see the changes made by User1 if he uses FOR EACH EXCLUSIVE-LOCK to the same database table
All Supported Operating Systems
Progress 8.x
Progress 9.x
OpenEdge 10.x

CAUSE:

Dirty Reads. Progress is fetching the record from local buffer for User 2, rather than from the database. User 2 session had previously executed a previous find for the same record.

FIX:

Use the start up parameter: -rereadnolock to force Progress to reread the record from the database or make sure that all buffers for the table have been released.