I wrote:
> Reproduced here. It's surprising that nobody noticed this before,
> because AFAICS the bug is pretty old: it dates to somebody foolishly
> deciding that heap_fetch didn't need its keep_buf argument, which
> evidently happened in v12 (didn't track down the exact commit yet).
The blame falls on Andres' commit 5db6df0c0. There is no commentary
there justifying this change, and I judge the amount of thought that
went into it by noting that that commit removed the argument without
removing the header comment explaining it.
regards, tom lane