The assertion checked that the size of the relation is not "too large" - but
the code is explicitly dealing with the possibility of another backend
extending the relation concurrently. In that case the new relation size could
be bigger than what the current backend needs, wrongly triggering an assertion
failure.
Unfortunately it is hard to write a reliable and affordable regression tests
for this, as a lot of concurrency is needed to encounter the bug.
Introduced in
31966b151e6a.
Reported-by: Melanie Plageman <[email protected]>
buffers, &extended_by);
current_size = first_block + extended_by;
- Assert(current_size <= extend_to);
Assert(num_pages != 0 || current_size >= extend_to);
for (int i = 0; i < extended_by; i++)