Patent ID: 7720812

Claim:
A system comprising: a processor; a current generation number, at least one current generation journal comprising a history of changes made to at least one data store, and a current generation master comprising valid state information wherein the current generation master performs at least one task for at least one client and wherein performing any one of the at least one task can comprise writing data to the at least one current generation journal or writing data to the at least one data store; a master reference such that any one of the at least one client can discover the current generation master; at least one inactive master wherein each one of the at least one inactive master is configured to become a new generation master by obtaining a new generation number, setting a generation number of at least one new generation journal to the obtained new generation number, copying the at least one current generation journal to the at least one new generation journal such that the current generation master becomes a previous generation master and the new generation master becomes the current generation master, the new generation number becomes the current generation number, the at least one new generation journal becomes the at least one current generation journal and wherein the previous generation master is configured to discover that it is not the current generation master; and an election module configured to cause one of the at least one inactive master to become the new generation master, thereby always having a current generation master and at least one current generation journal such that the at least one data store remains valid, wherein at least one of the at least one inactive master is a skeleton master or a shadow master that is configured to become the new generation master before obtaining or producing the valid state information.