On Fri, Oct 28, 2011 at 2:48 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> I also tried changing the BufferIsValid() tests in
>> visibilitymap_test() to use BufferIsInvalid() instead, with the sense
>> of the tests reversed (see attached vismap-test-invalid.patch). Since
>> BufferIsInvalid() just checks for InvalidBuffer instead of also doing
>> the sanity checks, it's significantly cheaper. This also reduced the
>> time to about 330 ms, so seems clearly worth doing.
>
> Hmm. I wonder whether it wouldn't be better to get rid of the range
> checks in BufferIsValid, or better convert them into Asserts. It seems
> less than intuitive that BufferIsValid and BufferIsInvalid aren't simple
> inverses.
Seems reasonable. It would break if anyone is using an out-of-range
buffer number in lieu of InvalidBuffer, but I doubt that anyone is.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company