From 54f36adcbcda8dec03e78c1cec453b9ebf3db3d2 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Mon, 26 Oct 2026 00:18:48 +0100 Subject: [PATCH] Fix tab completion for concurrent matview refresh Refreshing materialized views with CONCURRENT cannot use WITH NO DATA, but the tab completion supported this combination which is rejected by the backend. Author: Sho Ito Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/CAG7L5+7JOn_tjLjS1PJFTARtEybeJ1-aAAftZZ5L25_QZrjP4w@mail.gmail.com Backpatch-through: 14 --- src/bin/psql/tab-complete.in.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index a43034aa29b..96de78cd087 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -5072,10 +5072,8 @@ match_previous_words(int pattern_id, else if (Matches("REFRESH", "MATERIALIZED", "VIEW", MatchAny, "WITH")) COMPLETE_WITH("NO DATA", "DATA"); else if (Matches("REFRESH", "MATERIALIZED", "VIEW", "CONCURRENTLY", MatchAny, "WITH")) - COMPLETE_WITH("NO DATA", "DATA"); - else if (Matches("REFRESH", "MATERIALIZED", "VIEW", MatchAny, "WITH", "NO")) COMPLETE_WITH("DATA"); - else if (Matches("REFRESH", "MATERIALIZED", "VIEW", "CONCURRENTLY", MatchAny, "WITH", "NO")) + else if (Matches("REFRESH", "MATERIALIZED", "VIEW", MatchAny, "WITH", "NO")) COMPLETE_WITH("DATA"); /* REINDEX */