Use list_copy_head() instead of list_truncate(list_copy(...), ...)

David Rowley <drowley@postgresql.org>

Commit: c23e3e6beb273ae8c0f8e616edb7ed1acb0271c4
Author: David Rowley <drowley@postgresql.org>
Date: 2022-07-13T03:03:47Z
Releases: 16.0
Use list_copy_head() instead of list_truncate(list_copy(...), ...)

Truncating off the end of a freshly copied List is not a very efficient
way of copying the first N elements of a List.

In many of the cases that are updated here, the pattern was only being
used to remove the final element of a List.  That's about the best case
for it, but there were many instances where the truncate trimming the List
down much further.

4cc832f94 added list_copy_head(), so let's use it in cases where it's
useful.

Author: David Rowley
Discussion: https://postgr.es/m/1986787.1657666922%40sss.pgh.pa.us

Files

Discussion