Browse Prior Art Database

Method for Data Base Recovery in Client-Server Architectures

IP.com Disclosure Number: IPCOM000112575D
Original Publication Date: 1994-Jun-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 6 page(s) / 260K

Publishing Venue

IBM

Related People

Mohan, C: AUTHOR [+2]

Abstract

This invention presents an algorithm, called ARIES/CSA (Algorithm for Recovery and Isolation Exploiting Semantics for Client-Server Architectures), for performing recovery correctly in Client-Server (CS) architectures. ARIES/CSA supports Write-Ahead Logging (WAL), fine-granularity (e.g., record) locking, partial rollbacks and flexible buffer management policies like steal and no-force. Clocks on the clients and the server need not be synchronized.

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

Method for Data Base Recovery in Client-Server Architectures

      This invention presents an algorithm, called ARIES/CSA
(Algorithm for Recovery and Isolation Exploiting Semantics for
Client-Server Architectures), for performing recovery correctly in
Client-Server (CS) architectures.  ARIES/CSA supports Write-Ahead
Logging (WAL), fine-granularity (e.g., record) locking, partial
rollbacks and flexible buffer management policies like steal and
no-force.  Clocks on the clients and the server need not be
synchronized.

      The invention assumes the following CS model.  The server
manages the disk version of the data base and, possibly, takes care
of global locking across the clients.  The clients, after obtaining
data base pages from the server, cache them in their buffer pools.
Clients perform their updates on the cached pages and produce log
records.  However, clients do not have disks for logging.  They
buffer log records locally in virtual storage and later send them to
the single log managed by the server.  The focus of the invention is
on recovery from various types of failures when fine-granularity
(i.e., record) locking is in effect.

The following assumptions are made regarding the transaction
execution and other services.

o   A transaction executes in its entirety at a particular client or
    at the server.

o   Global lock management support is provided by the server.
    Clients acquire global locks by communicating with the Global
    Lock Manager (GLM) at the server.

o   Record locking is in effect.  However, at any given time, only
    one system is allowed to be actively modifying a page.  To
    guarantee this physical serialization of updates to a page, the
    ownership of update privileges is managed using physical ("P")
    locks.

o   Clocks across the complex of systems are not necessarily
    synchronized.

o   Clients have local log managers which behave very much like the
    regular log managers, except that, instead of writing log records
    to a local disk, they just buffer them in virtual storage and
    then at various points in time ship them to the server.  When the
    server receives log records from a client, it appends them to its
    log file.  A client does not discard a log record from its log
    buffer until it gets confirmation that the log record has been
    safely recorded on stable storage at the server.  The log records
    written by a client contain the client's identity.  This
    information would be used during an analysis pass for separating
    the log records written by a particular client from those written
    by the other clients.

o   A no-force policy is used between the clients and the server -
    that is, when a transaction terminates (by committing or rolling
    back), the pages modified by the transaction are not necessarily
    sent to the server before the transaction is allowed t...