We consider error correction by maximum distance separable (MDS) codes based on a part of the received codeword. Our problem is motivated by applications in distributed storage. While efficiently correcting erasures by MDS storage codes (the 'repair problem') has been widely studied in recent literature, the problem of correcting errors in a similar setting seems to represent a new question in coding theory. Suppose that k data symbols are encoded using an (n, k) MDS code, and some of the codeword coordinates are located on faulty storage nodes that introduce errors. We want to recover the original data from the corrupted codeword under the constraint that the decoder can download only an α proportion of the codeword (fractional decoding). For any (n, k) code we show that the number of correctable errors under this constraint is bounded above by [(n - k/α)/2]. Moreover, we present two families of MDS array codes which achieves this bound with equality under a simple decoding procedure. The decoder downloads an α proportion of each of the codeword's coordinates, and provides a much larger decoding radius compared to the naive approach of reading some an coordinates of the codeword. One of the code families is formed of Reed-Solomon (RS) codes with well-chosen evaluation points, while the other is based on folded RS codes. Finally, we show that folded RS codes also have the optimal list decoding radius under the fractional decoding constraint.