Consultor Eletrônico



Kbase P106444: What locks are generated by a 4GL CREATE statement?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   04/11/2008
Status: Verified

GOAL:

What locks are generated by a 4GL CREATE statement?

FACT(s) (Environment):

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

FIX:

The following code was used to check the locks on a CREATE statement, within a copy of sports2000 database.

DO TRANSACTION:
CREATE customer.
pause.
UPDATE customer.name.
pause.
END.While running the above, "promon sports2000"
4. Record Locking Table
1. Display all entries
shows the following:

Record Locking Table:
Usr Name Chain # Rec-id Table Lock Flags
6 user1 REC 975 5921 2 EXCL


As soon as a SQL92 user is logged in and run any statement,
"promon sports2000" shows:

Record Locking Table:
Usr Name Chain # Rec-id Table Lock Flags
24 user2 REC 408 11621 -80 SHR
24 user2 REC 483 11618 -2 SHR
24 user2 REC 484 11619 -2 SHR
24 user2 REC 485 11620 -2 SHR
24 user2 REC 599 11812 -80 SHR
24 user2 REC 644 11779 -2 SHR
24 user2 REC 645 11780 -2 SHR
24 user2 REC 673 11808 -2 SHR
24 user2 REC 674 11809 -2 SHR
24 user2 REC 675 11810 -2 SHR
24 user2 REC 676 11811 -2 SHR
24 user2 REC 809 3363 -80 SHR
6 user1 REC 975 5921 2 EXCL
6 user1 TAB 1239 0 2 IX
24 user2 TAB 1778 0 -84 SHR
24 user2 TAB 1781 0 -81 SHR
24 user2 &nbs.p; TAB 1782 0 -80 IS
24 user2 TAB 1860 0 -2 IS


A new lock appears:
6 user1 TAB 1239 0 2 IX

As a summary: when creating a new record within a file from a 4GL user, there is an EXCLUSIVE LOCK (EXCL) for the new record created and, if there are SQL92 users, then there is additionally an INTENT EXCLUSIVE LOCK (IX) for the table of that new record.
.