diff --git a/src/backend/storage/aio/read_stream.c b/src/backend/storage/aio/read_stream.c index 4c3218846dd..f9152ca084b 100644 --- a/src/backend/storage/aio/read_stream.c +++ b/src/backend/storage/aio/read_stream.c @@ -470,7 +470,12 @@ read_stream_begin_relation(int flags, LimitAdditionalLocalPins(&max_pinned_buffers); else LimitAdditionalPins(&max_pinned_buffers); - Assert(max_pinned_buffers > 0); + + /* + * The limit might be zero on a system configured with too few buffers for + * the number of connections. We need at least one to make progress. + */ + max_pinned_buffers = Max(1, max_pinned_buffers); /* * We need one extra entry for buffers and per-buffer data, because users