Browse Prior Art Database

Lock Management Architecture

IP.com Disclosure Number: IPCOM000099604D
Original Publication Date: 1990-Feb-01
Included in the Prior Art Database: 2005-Mar-15
Document File: 4 page(s) / 139K

Publishing Venue

IBM

Related People

VanderVeen, JA: AUTHOR

Abstract

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.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 48% of the total text.

Lock Management Architecture

       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.

      Applications 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.
Operation:

      The locks are maintained on a database;  a table in memory
cannot be used since batch and on-line may run concurrently.

      The lock 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
DBMS call.

      If the 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.

      The application program communicates with the LMCM via the Lock
Management Control Block (LMCB).

      Lock 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.

      The functions 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
detected.
           In the on-line environment, the LMCM always returns
control to the application program.
           In the on-line IMS environment, the L...