| From: | Platon Pronko <platon7pronko(at)gmail(dot)com> | 
|---|---|
| To: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> | 
| Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> | 
| Subject: | Re: very long record lines in expanded psql output | 
| Date: | 2021-08-05 13:30:48 | 
| Message-ID: | bb82e090-2587-5a64-003e-7203db5730fd@gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Hi!
> a) with line cursor
Tried in different configurations, seems that line cursor works fine.
> b) format detection - I try to detect the header line - and I expect this
> line has the most length of all lines. I use a line with the same length as
> the column's type info (data, border).
I looked at pspg source, and here's what I found (please correct me if some/all
of my assumptions are wrong):
1. Input handling and format detection happens in table.c readfile().
2. There's some variables in DataDesc - maxx and maxbytes - that store the
longest line seen so far. But they are re-updated on each new row, so the fact
that header is shorter shouldn't affect them.
3. Expanded header detection is handled by is_expanded_header function. It has
ei_minx and ei_maxx return pointers, but when it is used from readfile() these
pointers are set to NULL in both cases - so header length is simply ignored.
> Did you test the wrapped format? It is working
> 
> \pset format wrapped
> \x
> select  * from pg_class;
There's no difference in outputs in wrapped format, so pspg behavior is also unaffected.
By the way, it seems that pspg recommends setting \pset border 2 anyway, so in vast
majority of cases there should be no possibility of difference at all - proposed patch
doesn't change output for \pset border 2 (because there's no sane way of making it
look okay in presence of long fields anyway).
Best regards,
Platon Pronko
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Andrew Dunstan | 2021-08-05 13:42:47 | Re: Another regexp performance improvement: skip useless paren-captures | 
| Previous Message | Simon Riggs | 2021-08-05 13:28:37 | Re: Lowering the ever-growing heap->pd_lower |