Patent ID: 8117496

Claim:
A method for resolving a silent data error, comprising: running a primary copy of a program on a primary host; running a secondary copy of the program on a secondary host; the primary copy of the program; reading and writing data to a primary storage device; the secondary copy reading and writing data to a secondary storage device; the primary copy and the secondary copy communicating to maintain synchronized execution of the copies; a write data log, including a checksum for each modified page, stored on the primary storage device and maintained in memory on the primary host while the program is running; synchronizing the primary copy with the secondary copy, including: computing a first checksum of a data page on the primary host in response to a read operation local to the primary host; computing a second checksum of the data page on the secondary host in response to a read operation local to the secondary host; and periodically communicating the first checksum to the secondary host including comparing the first and second checksum of data after a defined quantity of read operations greater than one, and resolving any discrepancies between the first and second checksum of data reflecting a silent data error including detecting incorrect content in at least one of the copies due to the silent data error using the checksum of the data page in the write data log.