Re: psql - add SHOW_ALL_RESULTS option

Pavel Stehule <pavel.stehule@gmail.com>

From: Pavel Stehule <pavel.stehule@gmail.com>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: Peter Eisentraut <peter.eisentraut@enterprisedb.com>, "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2021-07-22T15:23:30Z
Lists: pgsql-hackers
čt 22. 7. 2021 v 16:58 odesílatel Fabien COELHO <coelho@cri.ensmp.fr>
napsal:

>
> >> Ok. I noticed. The patch got significantly broken by the watch pager
> >> commit. I also have to enhance the added tests (per Peter request).
> >
> > I wrote a test to check psql query cancel support.  I checked that it
> fails
> > against the patch that was reverted.  Maybe this is useful.
>
> Here is the updated version (v8? I'm not sure what the right count is),
> which works for me and for "make check", including some tests added for
> uncovered paths.
>
> I included your tap test (thanks again!) with some more comments and
> cleanup.
>
> I tested manually for the pager feature, which mostly work, althoug
> "pspg --stream" does not seem to expect two tables, or maybe there is a
> way to switch between these that I have not found.
>

pspg doesn't support this feature. Theoretically it can be implementable (I
am able to hold two datasets now), but without any help with
synchronization I don't want to implement any more complex parsing. On the
pspg side I am not able to detect what is the first result in the batch,
what is the last result (without some hard heuristics - probably I can read
some information from timestamps). And if you need two or more results in
one terminal, then mode without pager is better.



> --
> Fabien.

Commits

  1. psql: Show all query results by default

  2. psql: Refactor ProcessResult()

  3. psql: Refactor SendQuery()

  4. psql: Add test for psql behavior on server crash

  5. psql: Additional tests

  6. Improve some psql test code

  7. psql: Fix some scan-build warnings

  8. psql: Add test for handling of replication commands

  9. psql: More tests

  10. psql: Add various tests

  11. psql: Add test for query canceling

  12. Revert "psql: Show all query results by default"

  13. Extend a test case a little