Topic
Data Corruption
About: Data Corruption is a research topic. Over the lifetime, 435 publications have been published within this topic receiving 6784 citations.
Papers published on a yearly basis
Papers
More filters
•
17 May 2000TL;DR: In this paper, an error arising after a full stripe write is detected by a difference in sequence numbers for all of the components of user data in the stripe, and the errors in both cases are corrected by using the parity metadata for the entire collection of data and the correct information from the other components of the user data and metadata, and applying this information to an error correcting algorithm.
Abstract: Sequence number metadata which identifies an input/output (I/O) operation, such as a full stripe write on a redundant array of independent disks (RAID) mass storage system, and revision number metadata which identifies an I/O operation such as a read modify write operation on user data recorded in components of the stripe, are used in an error detection and correction technique, along with parity metadata, to detect and correct silent errors arising from inadvertent data path and drive data corruption. An error arising after a full stripe write is detected by a difference in sequence numbers for all of the components of user data in the stripe. An error arising after a read modify write is detected by a revision number which occurred before the correct revision number. The errors in both cases are corrected by using the parity metadata for the entire collection of user data and the correct information from the other components of the user data and metadata, and applying this information to an error correcting algorithm. The technique may be executed in conjunction with a read I/O operation without incurring a substantial computational overhead penalty.
77 citations
•
27 Jun 2002TL;DR: Checksum values are used to detect low-level data corruption as mentioned in this paper, such as read operations and write operations, cause data blocks to pass through a number of low level drivers when the data blocks are transferred between an operating system and mass storage location.
Abstract: Checksum values are used to detect low-level data corruption I/O operations, such as, for example, read operations and write operations, cause data blocks to pass through a number of low-level drivers when the data blocks are transferred between an operating system and mass storage location A checksum filter driver intercepts a data block as the data block passes between low-level drivers as a result of the performance of an I/O operation The checksum filter driver calculates a first checksum value for the data block The checksum filter subsequently intercepts the data block as the data block passes between low-level drivers as a result of the performance of a subsequent I/O operation The checksum filter driver calculates a second checksum value for the data block The first checksum value and the second checksum value are compared Data corruption is detected when a checksum mismatch occurs
76 citations
•
17 Jun 2008TL;DR: In this article, a controller is disclosed that is adapted to control read/write access to a storage media, which includes data corruption detection logic to reconstruct a logical block address (LBA) lookup table from metadata stored at the storage media upon restart and re-initialization after a power loss event.
Abstract: In a particular embodiment, a controller is disclosed that is adapted to control read/write access to a storage media. The controller includes data corruption detection logic to reconstruct a logical block address (LBA) lookup table from metadata stored at the storage media upon restart and re-initialization after a power loss event. The controller further includes duplicate conflict resolution logic to identify a valid data block from multiple data blocks that refer to a single LBA. The duplicate conflict resolution logic counts a first number of valid physical pages and a second number of different sectors in each of the multiple data blocks. The duplicate conflict resolution logic selects the valid data block from the multiple data blocks based on at least one of the first and second numbers.
74 citations
•
26 Apr 1989
TL;DR: In this article, a parallel asynchronous elasticity buffer is proposed, where the address of a storage element for writing or reading of data is provided by asynchronous input and output pointers implemented using circular gray code counters.
Abstract: A parallel asynchronous elasticity buffer. Selection of the address of a storage element for writing or reading of data is provided by asynchronous input and output pointers implemented using circular gray code counters. The buffer is initialized once during transmission of each frame of data so that the pointers do not select the same storage element for writing and reading at the same time. Write overflow or read underrun of a storage element is detected before any data corruption can occur by comparing the input and output pointers. An error condition is detected if the input and output pointers overlap for a threshold period, which can be shorter than the period required for writing or reading of a multibit data unit to or from the buffer. The overlap time period is determined by comparing the pointers at one or more sampling times corresponding to selected phases of a clock signal.
74 citations
•
17 May 2000TL;DR: In this article, a data structure contains sequence number and revision number metadata which are used in an error detection and correction technique, along with parity metadata, to detect and correct silent errors arising from inadvertent data path and drive data corruption.
Abstract: A data structure contains sequence number metadata which identifies an input/output (I/O) operation such as a full stripe write on a redundant array of independent disks (RAID) mass storage system, and also contains revision number metadata which identifies a subsequent I/O operation such as a read modify write on only a fractional component of the entire user data. The sequence number and revision number metadata are used in an error detection and correction technique, along with parity metadata, to detect and correct silent errors arising from inadvertent data path and drive data corruption. An error to a portion of the stripe is detected by a difference in sequence numbers for all of the components of data. An error arising after an I/O operation is detected by a revision number which is different from the correct revision number. The errors in both cases are corrected by using the parity metadata for the entire collection of user data and the correct information from the other components of the user data and metadata, and applying this information to an error correcting algorithm. The technique may be executed in conjunction with a read I/O operation without incurring a substantial processing overhead penalty.
73 citations