agora inbox for pgsql-committers@postgresql.org  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Fix psql's pager selection for wrapped expanded output.
Date: Sun, 05 Jul 2026 22:11:54 +0000
Message-ID: <E1wgV46-001V2X-1A@gemulon.postgresql.org> (raw)

Fix psql's pager selection for wrapped expanded output.

psql decided whether to use the pager in expanded output without
accounting for possible wrapping of column values.  This could
allow it to not use the pager in cases where it should do so.

To fix, move the IsPagerNeeded decision in print_aligned_vertical()
down until after the wrapped data width is known.  Then, if we're in
wrapped mode, prepare a width_wrap array specifying that width (which,
in vertical mode, is the same for all columns).

This is fixing an omission in 27da1a796, so back-patch to v19
where that came in.

Author: Chao Li <li.evan.chao@gmail.com>
Reviewed-by: Erik Wienhold <ewie@ewie.name>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/A44110E7-6A03-4C67-95AD-527192A6C768@gmail.com
Backpatch-through: 19

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/07abbc93ba5ba41b60927221db92bc73f75fd1ba

Modified Files
--------------
src/bin/psql/t/030_pager.pl |  5 +++++
src/fe_utils/print.c        | 53 ++++++++++++++++++++++++++++++---------------
2 files changed, 40 insertions(+), 18 deletions(-)



view thread (2+ messages)  latest in thread

Message-ID: <E1wgV46-001V2X-1A@gemulon.postgresql.org>
Permalink:  ../E1wgV46-001V2X-1A@gemulon.postgresql.org/
Also on:    postgresql.org/message-id/E1wgV46-001V2X-1A@gemulon.postgresql.org

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-committers@postgresql.org
  Cc: tgl@sss.pgh.pa.us, pgsql-committers@lists.postgresql.org
  Subject: Re: pgsql: Fix psql's pager selection for wrapped expanded output.
  In-Reply-To: <E1wgV46-001V2X-1A@gemulon.postgresql.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox