Browse Prior Art Database

DBMS PROTOCOL FOR SAFE FILE EXTENSION IN A MULTISYSTEM SHARED DISK ENVIRONMENT

IP.com Disclosure Number: IPCOM000014745D
Original Publication Date: 2001-Apr-01
Included in the Prior Art Database: 2003-Jun-20
Document File: 2 page(s) / 43K

Publishing Venue

IBM

Abstract

This invention describes a protocol which a DBMS follows in a multisystem shared disk environment to extend a file in such a way that a reader in one system would not miss reading any new data records which could be inserted by another system. During file extension the read/insert/update operations for the data records are not quiesced. The protocol also provides high availability since the failure of the system extending the file does not prevent a transaction in another system in the complex from extending the file and continuing with its insert of data record.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 59% of the total text.

Page 1 of 2

  DBMS PROTOCOL FOR SAFE FILE EXTENSION IN A MULTISYSTEM SHARED DISK ENVIRONMENT

This invention describes a protocol which a DBMS follows in a multisystem shared disk environment to extend a file in such a way that a reader in one system would not miss reading any new data records which could be inserted by another system. During file extension the read/insert/update operations for the data records are not quiesced. The protocol also provides high availability since the failure of the system extending the file does not prevent a transaction in another system in the complex from extending the file and continuing with its insert of data record.

A single system DBMS, such as DB/2, tracks the high-water mark (hwm) of the file space in a file control structure (FCS). This is used by the DBMS for the following purposes:

1. The Buffer manager component disallows any reads beyond the hwm since there is no valid data beyond that point.

2. When the data manager component of the DBMS determines that there is no room to inset a data record in the file space, it requests the Buffer manager for a new page number which is

beyond the current high-water mark. This causes the extend logic to extend the file space as follows:

a. Serialize the Extend processing among transaction of this system by getting an Extend lock in exclusive mode.

b. If the hwm in FCS has not changed, then:

1) Extend the file space and format one or more pages with zeroes.

2) Update FCS with the new high-water mark.

c. Else; /*Some other transaction did the extend processing*/

d. Release the extend lock.

3. Insert the data record in the new space.

However, in a multisystem shared disk environment each instance of the DBMS would have its own cached copy of FCS where hwm is tracked. Instant coherency of hwm among multiple systems is not possible. Therefore, the following race condition can arise: different systems could update their hwm at different times. This can lead to the following undesirable scenario: in system S1 hwm has been set to a new (higher) value, therefore a transaction in S1 can insert records in the new space and commit; meanwhile, system S2 has not updated its hwm yet, therfore a read transaction would be disallowed to read newly inserted data by transaction in S1.

The invention uses the following data structures:

1. There is a shared structure on stable storage, referred to as the Database Exception Table (DBET). DBET would be used for tracking an extension of a database file.

*There is a system service available which causes notification of DBET updates with acknowledgment to all active systems to synchronize the cached copies of DBET, and also any further

processing in those systems, such as update of hwm in FCS.

2. There are 2 hw...