Several read stream users asserted that the read stream was exhausted
after looping on that very condition. It was pointed out in an a
review of an as-of-yet uncommitted read stream user [1] that this was
confusing and could lead the reader to think there was a possibility of
some kind of race condition. Remove these asserts.
[1] https://postgr.es/m/
F9ACE8D0-B807-4A17-B6BD-
87EF0717983D%40yesql.se
break;
}
- /* Ensure that the stream is completely read */
- Assert(read_stream_next_buffer(stream, NULL) == InvalidBuffer);
read_stream_end(stream);
if (vmbuffer != InvalidBuffer)
gistvacuumpage(&vstate, buf);
}
- Assert(read_stream_next_buffer(stream, NULL) == InvalidBuffer);
-
/*
* We have to reset the read stream to use it again. After returning
* InvalidBuffer, the read stream API won't invoke our callback again
current_block);
}
- Assert(read_stream_next_buffer(stream, NULL) == InvalidBuffer);
-
/*
* We have to reset the read stream to use it again. After returning
* InvalidBuffer, the read stream API won't invoke our callback again
spgprocesspending(bds);
}
- Assert(read_stream_next_buffer(stream, NULL) == InvalidBuffer);
-
/*
* We have to reset the read stream to use it again. After returning
* InvalidBuffer, the read stream API won't invoke our callback again