[COMMITTERS] pgsql: Be more careful about newline-chomping in pgbench. - Mailing list pgsql-committers

From Tom Lane
Subject [COMMITTERS] pgsql: Be more careful about newline-chomping in pgbench.
Date
Msg-id E1doysA-0001GW-Qk@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Be more careful about newline-chomping in pgbench.

process_backslash_command would drop the last character of the input
command on the assumption that it was a newline.  Given a non newline
terminated input file, this could result in dropping the last character
of the command.  Fix that by doing an actual test that we're removing
a newline.

While at it, allow for Windows newlines (\r\n), and suppress multiple
newlines if any.  I do not think either of those cases really occur,
since (a) we read script files in text mode and (b) the lexer stops
when it hits a newline.  But it's cheap enough and it provides a
stronger guarantee about what the result string looks like.

This is just cosmetic, I think, since the possibly-overly-chomped
line was only used for display not for further processing.  So
it doesn't seem necessary to back-patch.

Fabien Coelho, reviewed by Nikolay Shaplov, whacked around a bit by me

Discussion: https://postgr.es/m/alpine.DEB.2.20.1704171422500.4025@lancre

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/0b707d6ea75971fb464a74e7a6334e2d5ae822b7

Modified Files
--------------
src/bin/pgbench/exprscan.l | 26 +++++++++++++++++---------
src/bin/pgbench/pgbench.c  | 19 +++++++------------
src/bin/pgbench/pgbench.h  |  3 ++-
3 files changed, 26 insertions(+), 22 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: [COMMITTERS] pgsql: Fix some subtle problems in pgbench transaction stats counting.
Next
From: Tom Lane
Date:
Subject: [COMMITTERS] pgsql: Reformat psql's --help=variables output.