New Features for ALLBASE/XL [ COMMUNICATOR 3000/XL Release 1.2, Version A.20.10 ] MPE/iX Communicators
COMMUNICATOR 3000/XL Release 1.2, Version A.20.10
New Features for ALLBASE/XL
by Doug Griffin--Data & Languages Division
A new version of ALLBASE/XL is available with this MPE XL release. This
version contains some new features and changes which are very important
to ALLBASE/XL programmers and database administrators.
NEW FEATURES
The following describes each of the new ALLBASE/XL features.
Native Language Support
ALLBASE/XL now allows you to specify a 8 bit and 16 bit native language
for each DBEnvironment. Localization is allowed for most object names
and localization is allowed for data stored within the DBEnvironment.
Native language names will be recognized by ALLBASE/XL, and data can be
sorted and presented using the appropriate native language collating
sequence.
Locking Enhancements
New "Cursor Stability," "Read Committed," and "Shared with intent Update
(SIX)" locking enhancements represent a major improvement to ALLBASE/XL.
Current and new applications should seriously consider using these new
modes of locking to improve concurrency. Listed below are all of the
locking options now available on ALLBASE/XL. Square bullets in the list
denote new locking features, and round bullets denote features which
existed prior to Release 1.2.
* BEGIN WORK RR (Repeatable Read)--all pages read are locked with a
shared read lock, and all pages modified are upgraded to an exclusive
lock. RR locking guarantees that any data read or modified by the
current transaction will not change until the transaction has been
committed.
* BEGIN WORK CS (Cursor Stability)--all pages read are locked with a
shared read lock, then released when the application program accesses
the next page. Pages which are modified are upgraded to an exclusive
lock which is held until the end of the current transaction.
* BEGIN WORK RC (Read Committed)--all pages read are locked with a
shared read, then released before the application resumes execution.
Pages which are updated will acquire a new exclusive lock which will
be held until the end of the current transaction.
* LOCK TABLE IN SHARE MODE--explicitly locks specified table for shared
read access and allows others to lock all or part of the table for
shared read access for the duration of the current transaction.
* LOCK TABLE IN SHARE UPDATE MODE (SIX)--explicitly locks a specified
table for shared read and allows individual pages within the table to
be locked exclusively for update throughout the duration of the
current transaction.
* LOCK TABLE IN EXCLUSIVE MODE--explicitly locks a specified table for
exclusive use for the duration of the current transaction.
Intent-Update Locking
Another locking enhancement is one which is transparent to the
application. This is know as "Intent-Update Locking," and is a feature
which can significantly reduce deadlock occurrences.
Whenever SQL determines that the user may update a row which is being
read (for example, when a cursor declared with a "FOR UPDATE OF" clause
is opened), the accessed pages are locked in share update mode (SIX).
This reduces deadlocks in cases where multiple processes are reading and
updating data.
More Performance Through Section Caching
Section caching is a new feature where ALLBASE/XL does not re-validate an
application program's sections once for each transaction. Before section
caching, sections were read from disc to lock and validate the section
for every transaction. With very short transactions, the overhead
necessary to read and validate the section was substantial. Now, section
caching will avoid this validation and locking overhead whenever DDL
(data definition) is disabled through SQLUTIL's ALTDBE command.
C and FORTRAN Preprocessors
This version of ALLBASE/XL contains preprocessors for two more languages:
C and FORTRAN. ALLBASE/XL, therefore, now supports COBOL, Pascal, C, and
FORTRAN.
NOTE The C compiler on this version of MPE XL does not support Native
Language Support.
SPECIAL CONSIDERATIONS
Because of the additional locking features and Native Language Support,
some changes must be made to the system catalogs of existing DBEs. This
version of ALLBASE/XL will make these changes automatically with the
first access of the DBE following an update to Release 1.2. A backup of
all DBEs (a system backup will suffice) is therefore recommended before
any update to Release 1.2. In addition, it is recommended that for DBEs
using ARCHIVE mode logging that a START DBE NEWLOG be performed following
the update to Release 1.2. For additional details on usage of these new
features, please refer to the following HP SQL reference materials:
* ALLBASE/XL HP SQL Reference Manual (P/N 36216-60005)
* ALLBASE/XL HP SQL Database Administration Guide (P/N 36216-60007)
* ALLBASE/XL HP SQL C Application Programming Guide (P/N 36216-60017)
* ALLBASE/XL HP SQL FORTRAN Application Programming Guide (P/N
36216-60015)
MPE/iX Communicators