From: Álvaro Herrera Date: Mon, 4 May 2026 18:01:19 +0000 (+0200) Subject: Fix off-by-one in repack index loop X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b5f92b8eb4398e747cd438c259e54f8f540f778c;p=thirdparty%2Fpostgresql.git Fix off-by-one in repack index loop A blunder of mine (Álvaro) in commit 28d534e2ae0a. Author: Lakshmi N Reviewed-by: Xiaopeng Wang Reviewed-by: John Naylor Discussion: https://postgr.es/m/CA+3i_M9ytFufvD8Tm0rhpfxuC4XrpgQDBHxM7NJQYxv488JW7w@mail.gmail.com --- diff --git a/src/backend/commands/repack.c b/src/backend/commands/repack.c index 9d162957bc3..dca3997c31b 100644 --- a/src/backend/commands/repack.c +++ b/src/backend/commands/repack.c @@ -3017,7 +3017,7 @@ rebuild_relation_finish_concurrent(Relation NewHeap, Relation OldHeap, { int pos = foreach_current_index(ind_old); - if (unlikely(list_length(ind_oids_new) < pos)) + if (list_length(ind_oids_new) <= pos) elog(ERROR, "list of new indexes too short"); ident_idx_new = list_nth_oid(ind_oids_new, pos); break;