Lock Management Architecture
Original Publication Date: 1990-Feb-01
Included in the Prior Art Database: 2005-Mar-15
Described is a process that provides the ability to control which data-base activities can occur while selected other database updates are occurring. It also provides the ability to prohibit selected database updates from beginning dependent on other activities occurring against the database.
Lock Management Architecture
a process that provides the ability to
control which data-base activities can occur while selected other
database updates are occurring. It also provides the ability to
prohibit selected database updates from beginning dependent on other
activities occurring against the database.
require the ability to lock resources to prevent
interference from other processes. These resources may consist of
one or more physical records residing on one or more physical
databases. For example, the application may require a lock on the
resource "in- voice", where invoice consists of one header record on
one database and multiple invoice details on another database.
The locks are
maintained on a database; a table in
cannot be used since batch and on-line may run concurrently.
management architecture consists of the Lock
Management Control Module (LMCM) and the Database Access Module
(DBAM). The application program calls the LMCM to request a lock or
unlock function. The LMCM translates the request into the
appropriate DBMS request and calls the DBAM to issue the specific
application program calls the LMCM to request a lock and
a lock is currently outstanding for the resource, the LMCM will wait
and retry the lock request based on user-specified polling
parameters. The polling parameters specify the amount of time
between lock attempts and the maximum number of lock attempts. If
the LMCM reaches the maximum number of lock attempts, it will return
an invalid return code to the application program. The polling
parameters are stored on the System Parameter Table and are
maintained on the System Parameter Table screen.
application program communicates with the LMCM via the Lock
Management Control Block (LMCB).
Management Control Module (LMCM): There are two LMCMs: one
for on-line programs and one for batch programs. The LMCM manages the
logical locking and unlocking of program resources. These resources
are defined by the functional applications; the LMCM supports the
locking/unlocking of any resource an application may define.
of the LMCM include the following:
Translate the program's request into appropriate DBMS
calls to support the function. Call the DBAM to provide the
interface to the DBMS.
Perform error processing. The LMCM returns a generic
status code in the LMCB. If a fatal system error occurs during LMCM
processing, the LMCM calls the System Error Control Module (SECM).
In the batch and async environments, the application
program receives control from the LMCM only if no system error is
In the on-line environment, the LMCM always returns
control to the application program.
In the on-line IMS environment, the L...