Browse Prior Art Database

A Journal Architecture for a Segmented, Single Level Store

IP.com Disclosure Number: IPCOM000047431D
Original Publication Date: 1983-Nov-01
Included in the Prior Art Database: 2005-Feb-07
Document File: 4 page(s) / 25K

Publishing Venue

IBM

Related People

Borgendale, KW: AUTHOR [+3]

Abstract

A journal is a sequential, write-only file of changes made by users to files within a computer system. The journal is used for error recovery. The journal grows over time because entries are inserted but never deleted. For proper disk utilization and off-site recovery needs, it is necessary to break the journal up and save it offline often. In an object-oriented single level storage system it is necessary to find a way to create multiple journal spaces and still have the journal available for further entries. It is also necessary to maintain a list of objects which use it. When the system crashes, entries must remain available to synchronize the journal with the objects.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 40% of the total text.

Page 1 of 4

A Journal Architecture for a Segmented, Single Level Store

A journal is a sequential, write-only file of changes made by users to files within a computer system. The journal is used for error recovery. The journal grows over time because entries are inserted but never deleted. For proper disk utilization and off-site recovery needs, it is necessary to break the journal up and save it offline often. In an object-oriented single level storage system it is necessary to find a way to create multiple journal spaces and still have the journal available for further entries. It is also necessary to maintain a list of objects which use it. When the system crashes, entries must remain available to synchronize the journal with the objects. The major element of the solution to journalizing in an object-oriented single storage system is to break the journal into two objects: the Journal Space and the Journal Port. The Journal Port. The Journal Port maintains the records of Data Base objects whose changes are journaled. The Journal Space has the individual records of the changes. Each Journal Entry within a Journal Space has a sequence number which is sufficiently unique for recovery purposes. If the sequence number is 8 bytes, the number is sufficiently unique for any conceivable journal. A 4-byte sequence number may not be unique over the life of the Journal Port, but it is sufficiently unique for recovery purposes and it is easy to simulate an 8-byte effective sequence number. The Journal Entry sequence number forms the link which enables an entity which can be called "a Journal" to exist as a set of Journal Spaces which were once connected to the same Journal Port. The logical picture of a journal is shown in Fig. 1. Create Journal Port and Create Journal Space instructions are similar to other object creation instructions. The main added function in this instance is to make an entry for each Journal Port in a system wide table of Journal Objects called the "System Wide Journal List (SWJL)." This table enables Journal IPL (Initial Program Load) Recovery to discover active Journal Objects which might need some form of recovery. The portion of recovery described here is for the Attach and Detach operations which could be interrupted due to power failures or program errors. The recovery is designed to restore the objects to a consistent state by either backing out or completing the operation. Destroy Journal Space and Destroy Journal Port instructions are similar to other object destruction instructions. Like other destroy operations, there are situations in which a destroy is not permitted. Journal Ports contain the list, for the Journal, of the objects being journaled.

As long as there are objects being journaled, then the destroy is not allowed. For Journal Spaces, they may be created and destroyed freely until they are attached to some Journal Port. Once attached, the Journal Space cannot be destroyed until it is detached.

Destruction is s...