Logical Tape Set: use min heap for freelist.
authorJeff Davis <jdavis@postgresql.org>
Thu, 6 Feb 2020 18:06:25 +0000 (10:06 -0800)
committerJeff Davis <jdavis@postgresql.org>
Thu, 6 Feb 2020 18:09:45 +0000 (10:09 -0800)
commitc02fdc9223015c5c386abfa00c47fc7f4c845161
treea653740c4f4a1f01a8f9c129abc83d73ba2025c4
parentcac8ce4a738a6fbc6cda4759c056f89a5b603bfc
Logical Tape Set: use min heap for freelist.

Previously, the freelist of blocks was tracked as an
occasionally-sorted array. A min heap is more resilient to larger
freelists or more frequent changes between reading and writing.

Discussion: https://postgr.es/m/97c46a59c27f3c38e486ca170fcbc618d97ab049.camel%40j-davis.com
src/backend/utils/sort/logtape.c