Re: Polyphase merge is obsolete

Peter Eisentraut <peter.eisentraut@enterprisedb.com>

From: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
To: Heikki Linnakangas <hlinnaka@iki.fi>, John Naylor <john.naylor@enterprisedb.com>
Cc: Jaime Casanova <jcasanov@systemguards.com.ec>, vignesh C <vignesh21@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Peter Geoghegan <pg@bowt.ie>, Tomas Vondra <tomas.vondra@2ndquadrant.com>, Zhihong Yu <zyu@yugabyte.com>
Date: 2022-11-19T11:00:12Z
Lists: pgsql-hackers
On 18.10.21 14:15, Heikki Linnakangas wrote:
> On 05/10/2021 20:24, John Naylor wrote:
>> I've had a chance to review and test out the v5 patches.
> 
> Thanks! I fixed the stray reference to PostgreSQL 14 that Zhihong 
> mentioned, and pushed.

AFAICT, this thread updated the API of LogicalTapeSetCreate() in PG15, 
but did not adequately update the function header comment.  The comment 
still mentions the "shared" argument, which has been removed.  There is 
a new "preallocate" argument that is not mentioned at all.  Also, it's 
not easy to match the actual callers to the call variants described in 
the comment.  Could someone who remembers this work perhaps look this 
over and update the comment?




Commits

  1. Fix and clarify function comment on LogicalTapeSetCreate.

  2. Refactor LogicalTapeSet/LogicalTape interface.

  3. Replace polyphase merge algorithm with a simple balanced k-way merge.

  4. logtape.c: do not preallocate for tapes when sorting