Patent ID: 6865584

Claim:
A method for recovering a database provided with disk back-up, the method comprising the steps of: maintaining in a central memory a database comprising a first generation and at least one mature generation, said generations containing memory cells in which data and additionally pointers constituting references between memory cells are stored, in the area of mature generations in the central memory, maintaining generation-specific remembered sets, in which addresses of the pointers pointing to each generation in question are listed, allocating memory for the use of an application from the area of the first generation in the central memory, in the area of the first generation, periodically collecting live memory cells as a new mature generation into the central memory into the area of mature generations, performing garbage collection generationally in the area of mature generations, whereby in connection with the collection a remembered set is examined and live memory cells are copied in the order indicated by the remembered set into a temporally more recent mature generation, storing the mature generation after the garbage collection in a separate disk memory, as the garbage collection proceeds, making changes, in the area of mature generations, to the references between generations in a generation that has already been stored in disk memory, wherein making at least some of said changes in the central memory only, maintaining in the disk memory, in addition to the most current versions of the mature generation stored on disk, the previous version stored on disk, and performing recovery by means of said versions (a) by reconstructing the remembered set of previous version stored on disk, said remembered set indicating the pointers referring to the generation in question, and (b) by changing the pointers indicated by the remembered set to refer to the memory cells of said most current version.