Consultor Eletrônico



Kbase P5334: Error 7872 when attempting to change SQL-92 schema - Progres
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   9/1/2004
Status: Verified

FACT(s) (Environment):

Windows NT 4.0

FACT(s) (Environment):

Progress 9.1D

SYMPTOM(s):

Cannot make schema changes when 4GL users have a share lock.

Cannot change security because the SQL explorer cannot get an exclusive lock.

Failure to acquire exclusive schema lock for DDL operation. (7872)

Here is typical test case

1. Connect a 4GL client to a database.
2. Connect a SQL92 client to the database via sqlexplorer. Grant DBA to a user.
3. From 4GL client issue: find first tablename sharelock pause.
4. Attempt to go back to sqlexplorer and receive error 7872

CAUSE:

SQL, as per the sql standards, considers a transaction to be an action which is
accessing database data. Even though a transaction may just be reading data it is
still considered a transaction.

The classic 4GL viewpoint is that a transaction is an action changing database
data. This differs considerably from the standard sql concept.

If the 4GL application has a share lock, then it also has at a minimum, a share
lock on the database's schema.

FIX:

Release share lock from 4GL client