Applications of static analysis of concurrency control and recovery in objectbase systems

Ken Barker, Peter C. J. Graham · 1994

This dissertation explores the use of statically derived information to improve concurrency control and recovery in objectbase systems. It surveys the relevant background material including existing objectbase systems and conventional concurrency control and recovery. The problem of providing concurrency control and recovery in objectbases supporting nested transactions is analyzed and types of static information which are useful to concurrency control and recovery are determined. Algorithms are proposed to derive the needed static information. The problem of concurrency control in objectbases is decomposed into two simpler problems: intra-transaction concurrency control and inter-transaction concurrency control and algorithms are developed for each. A novel concurrency control algorithm combining the algorithms for intra- and inter-transaction concurrency control which specifies serialization orders a priori is presented. The algorithm selects appropriate serialization orders based on its knowledge of intra- and inter-object relationships. This knowledge is based on static information derived at compile and object-instantiation time. Static information derived at compile time is also used to decrease the overhead or insuring recoverability during transaction processing. By exploiting knowledge of object method behaviours, both the amount of information which must be logged and the number of cache flushes which must be performed are significantly decreased. This decreases the number of corresponding I/O operations which are the primary source of overhead in recovery processing. Numerous other results for both single and multi-version objectbases are also presented. The complexity, effectiveness, and correctness of the algorithms is discussed and conclusions are drawn on their applicability.

Read the paper · More papers on PaperTik