 |
» |
|
|
 |
 |
 |

5.13 What are the dbecon file parameters associated with locking (continued)?
Key points
- DDL Enabled
- Default is YES, which allows data definition language (DDL) statements (such
as
CREATE, DROP, and so on) to be issued within the DBEnvironment. DDL
statements obtain exclusive locks on data in the system catalog. These locks
can cause severe concurrency problems with other transactions. When the DDL
enabled parameter is set to NO, DDL is disabled, which means that these
statements cannot be issued successfully (an error is returned if an attempt
is made to issue them). Therefore, only share locks will be obtained on the
majority of tables in the system catalog.
- When DDL has been disabled, invalid sections can still be revalidated. When
revalidation occurs, exclusive locks are obtained on several tables in the
system catalog; these locks can cause concurrency problems with other
transactions.
- If invalid sections exist in your DBEnvironment, you can either issue the
VALIDATE statement to manually perform revalidation, or you can rely on
ALLBASE/SQL to automatically revalidate the sections when they are
encountered.
- It is usually better to use the
VALIDATE statement rather then to rely on
automatic revalidation, because concurrency problems during production hours
can be avoided. For best performance, no invalid sections should exist during
high-access periods for the DBEnvironment.
- Use the
VALIDATE statement immediately after sections have become invalid
(that is, when something that a section depends on is modified). For example,
if an UPDATE STATISTICS statement is issued or if an index is dropped and
recreated, a VALIDATE statement should also be issued because some sections
might have become invalid. For best performance, issue all the DDL
statements (such as UPDATE STATISTICS), then issue all the VALIDATE
statements. This ensures that you only invalidate and revalidate a section
once, even if it is dependent on several tables.
- When DDL has been disabled, ALLBASE/SQL retains sections in user memory
between transactions. This means that an application program that re-executes
the same sections again and again does not require ALLBASE/SQL to read the
sections in from disk each time. This can have a significant positive effect
on performance.
- When DDL has been disabled, certain system catalog information is retained
in shared memory, which also improves performance.

Page last updated on November 29, 1995
|
|
|