HADOOP-15042. Azure PageBlobInputStream.skip() can return negative value when numberOfPagesRemaining is 0.

Contributed by Rajesh Balamohan
This commit is contained in:
Steve Loughran 2017-11-28 11:52:59 +00:00
parent 94bed50471
commit 0ea182d0fa

View File

@ -343,9 +343,9 @@ private long skipImpl(long n) throws IOException {
// Skip over whole pages as necessary without retrieving them from the
// server.
long pagesToSkipOver = Math.min(
long pagesToSkipOver = Math.max(0, Math.min(
n / PAGE_DATA_SIZE,
numberOfPagesRemaining - 1);
numberOfPagesRemaining - 1));
numberOfPagesRemaining -= pagesToSkipOver;
currentOffsetInBlob += pagesToSkipOver * PAGE_SIZE;
skipped += pagesToSkipOver * PAGE_DATA_SIZE;