Inventors:
David B. Lomet - Redmond WA, US
Mark R. Tuttle - Arlington MA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F017/30
US Classification:
707202, 707101, 707103 R, 707203, 709203, 709229, 711133, 711135
Abstract:
This invention concerns a database computer system and method for making applications recoverable from system crashes. The application state (i. e. , address space) is treated as a single object which can be atomically flushed in a manner akin to flushing individual pages in database recovery techniques. To enable this monolithic treatment of the application, executions performed by the application are mapped to logical loggable operations that can be posted to the stable log. Any modifications to the application state are accumulated and the application state is periodically flushed to stable storage using an atomic procedure. The application recovery integrates with database recovery, and effectively eliminates or at least substantially reduces the need for check pointing applications. In addition, optimization techniques are described to make the read, write, and recovery phases more efficient. Atomic flush sets, whether generated from cyclic flush dependencies or otherwise, can be broken apart.