a method and apparatus for detecting and correcting errors and erasures in product - coded data arrays by iterative syndrome processing array data in row major order and column major order . a first dense map is formed for classifying each row containing location indicia of random errors , their correction patterns , and pointers to rows containing erasure errors . this map is used to effectuate row array random error corrections in place in memory . a second dense map is formed of location indicia and correction patterns for each pair adjacent position within a column containing erasure errors as indexed by a counterpart row pointer . the second map is used to effectuate column array erasure corrections and random error corrections in place in memory .