Logical Tape Set: use min heap for freelist.

Jeff Davis <jdavis@postgresql.org>

Commit: c02fdc9223015c5c386abfa00c47fc7f4c845161
Author: Jeff Davis <jdavis@postgresql.org>
Date: 2020-02-06T18:09:45Z
Releases: 13.0
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

Files

PathChange+/−
src/backend/utils/sort/logtape.c modified +104 −56

Discussion