Add backend-only appendStringInfoStringQuoted

Enterprise / PostgreSQL - Alvaro Herrera [alvh.no-ip.org] - 10 December 2019 20:12 UTC

This provides a mechanism to emit literal values in informative messages, such as query parameters. The new code is more complex than what it replaces, primarily because it wants to be more efficient. It also has the (currently unused) additional optional capability of specifying a maximum size to print.

The new function lives out of common/stringinfo.c so that frontend users of that file need not pull in unnecessary multibyte-encoding support code.

Author: Álvaro Herrera and Alexey Bashtanov, after a suggestion from Andres Freund

6cafde1bd4 Add backend-only appendStringInfoStringQuoted
src/backend/tcop/postgres.c | 11 +----
src/backend/utils/mb/Makefile | 1 +
src/backend/utils/mb/README | 1 +
src/backend/utils/mb/stringinfo_mb.c | 86 +++++++++++++++++++++++++++++++++++
src/include/mb/stringinfo_mb.h | 24 ++++++++++
src/pl/plpgsql/src/pl_exec.c | 37 +++++----------
src/test/regress/expected/plpgsql.out | 14 ++++++
src/test/regress/sql/plpgsql.sql | 13 ++++++
8 files changed, 152 insertions(+), 35 deletions(-)

Upstream: git.postgresql.org


  • Share