System and method for scaleable multiplexed transactional log recovery
AssigneeMicrosoft Corporation
InventorDexter Paul Bradshaw
Life of this patent
Estimating the term…
Abstract
A system and method for providing scaleable recovery for a multiplexed transactional log. Unlike a dedicated log that includes log data of only one client, a multiplexed transactional log may include log data from multiple clients. In a multiplexed transactional log, log data from different clients may be multiplexed into the multiplexed transactional log in any order. The multiplexed log is maintained for multiple clients using a scaleable logging process. After a system failure, the multiplexed log is recovered using a scaleable recovery process. The scaleable recovery process includes an end-of-log locating process for locating the end of the multiplexed log and each of the virtual logs with the multiplexed log. The end-of-log locating process is also scaleable.
Claims32
A transactional logging system comprising:
- a transactional log associated with a storage unit, wherein the transactional log contains log blocks from a plurality of clients and wherein a plurality of owner pages include information on how the log blocks are organized in the transactional log;
- a metadata file including information about the transactional log;
- a multiplexed transactional logging component configured to append the log blocks and the owner pages to the transactional log and to recover the transactional log after a system failure using information in the owner pages and the metadata file;
- determine the last valid owner page in the transactional log by search from a starting point indicated in the metadata file and determine a last valid region in the transactional log by sequentially checking each region from the starting point toward the beginning of the transactional log.
A computer-implemented method for transactional logging, comprising:
- maintaining a multiplexed log for a plurality of clients using a scaleable logging process;
- and
- recovering the multiplexed log after a system failure using a scaleable recovery process, wherein the scaleable recovery process comprises:
- determining a last valid owner page by scanning forward in the multiplexed log at a fixed interval;
- wherein in response to determining the last valid owner page, determining a last valid region in the multiplexed log comprising checking whether a region associated with the last valid owner page is valid;
- wherein in response to determining a last valid region, determining an end of the multiplexed log and ends to a plurality of virtual logs within the multiplexed log using a scaleable end-of-log locating process;
- wherein the scaleable end-of-log locating process comprises checking log blocks in an incomplete region, and wherein the incomplete region is located after the last valid owner page in the multiplexed log.
Dependencies are inferred from the claim text.