Re: bugfix - fix broken output in expanded aligned format, when data are too short - Mailing list pgsql-hackers

From Chao Li
Subject Re: bugfix - fix broken output in expanded aligned format, when data are too short
Date
Msg-id 57A3F283-BE02-4D66-8CA7-002AF7A09E08@gmail.com
Whole thread Raw
In response to Re: bugfix - fix broken output in expanded aligned format, when data are too short  (Pavel Stehule <pavel.stehule@gmail.com>)
Responses Re: bugfix - fix broken output in expanded aligned format, when data are too short
List pgsql-hackers

> On Mar 24, 2026, at 14:31, Pavel Stehule <pavel.stehule@gmail.com> wrote:
>
>
>
> út 24. 3. 2026 v 7:12 odesílatel Chao Li <li.evan.chao@gmail.com> napsal:
>
>
> > On Mar 24, 2026, at 13:46, Pavel Stehule <pavel.stehule@gmail.com> wrote:
> >
> > Hi
> >
> > new version
> >
> > * fixed unwanted forcing to wrapped mode
> > * regress test
> >
> > Regards
> >
> > Pavel
> > <v20260324-1-0001-The-output-of-thin-table-is-broken-in-expanded-mode-.patch>
>
> Thanks for the fix. The patch overall looks good to me. A couple of small comments:
>
> 1
> ```
>         /*
>          * Calculate available width for data in wrapped mode
>          */
> -       if (cont->opt->format == PRINT_WRAPPED)
> +       if (cont->opt->format == PRINT_WRAPPED || cont->opt->format == PRINT_ALIGNED)
> ```
>
> Since the condition has been updated, I think the comment above should be adjusted as well.
>
> done
>
> pavel@nemesis:~/src/postgresql$ git diff
> diff --git a/src/fe_utils/print.c b/src/fe_utils/print.c
> index 7d7eb7dd041..dbfe437bc4c 100644
> --- a/src/fe_utils/print.c
> +++ b/src/fe_utils/print.c
> @@ -1443,7 +1443,8 @@ print_aligned_vertical(const printTableContent *cont,
>     }
>
>     /*
> -    * Calculate available width for data in wrapped mode
> +    * Calculate available width for data in wrapped mode or minimal width
> +    * in aligned mode
>      */
>     if (cont->opt->format == PRINT_WRAPPED || cont->opt->format == PRINT_ALIGNED)
>     {
>
>
> 2
> ```
> +-- the output in expanded mode is shorter than header
> +\pset border 2
> +\pset expanded on
> +create table psql_short_tab(a int, b int);
> +insert into psql_short_tab values(10,20),(30,40);
> +\pset format aligned
> +select * from psql_short_tab;
> +\pset format wrapped
> +select * from psql_short_tab;
> +drop table psql_short_tab;
> +
> ```
>
> After this test, does it make sense to turn expanded mode off explicitly, in case it affects following tests? Today
thenext test happens to reset it, but maybe tomorrow a new test gets added before that point. 
>
> There is no default pset setting in psql.sql. Following test has its own setting. Generally this is the
responsibilityto every test to set the environment how it is necessary. Maybe I am wrong, but I see, so only database
objectsand prepared queries are cleaned there. There is not problem to write \pset border 1 \pset expanded off, but
followingtests starts with \pset expanded off and this can be little bit messy and redundant  
>
> Thank you for check
>
> Regards
>
> Pavel
>
> Best regards,
> --
> Chao Li (Evan)
> HighGo Software Co., Ltd.
> https://www.highgo.com/
>
>
>
>
> <v20260324-2-0001-The-output-of-thin-table-is-broken-in-expanded-mode-.patch>

LGTM.

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/







pgsql-hackers by date:

Previous
From: Peter Smith
Date:
Subject: Re: Initial COPY of Logical Replication is too slow
Next
From: Michael Paquier
Date:
Subject: Re: Adding locks statistics