From f62b09d1fd2dd0d5e6b807ecb3a5481f48106692 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Tue, 14 Jan 2020 12:58:00 -0800 Subject: [PATCH v2 2/9] stringinfo: Remove in-core use of appendStringInfoCharMacro(). Kept seperate only to reduce size of patch moving to more inlining for stringinfo. Author: Reviewed-By: Discussion: https://postgr.es/m/ Backpatch: --- src/backend/commands/copy.c | 2 +- src/backend/commands/explain.c | 8 ++++---- src/backend/libpq/pqformat.c | 2 +- src/backend/utils/adt/json.c | 6 +++--- src/backend/utils/adt/jsonb.c | 10 +++++----- src/backend/utils/adt/jsonfuncs.c | 28 ++++++++++++++-------------- src/backend/utils/adt/jsonpath.c | 6 +++--- src/backend/utils/adt/rowtypes.c | 8 ++++---- src/backend/utils/adt/varlena.c | 4 ++-- src/backend/utils/adt/xml.c | 2 +- src/backend/utils/error/elog.c | 12 ++++++------ src/backend/utils/mb/stringinfo_mb.c | 2 +- contrib/tcn/tcn.c | 16 ++++++++-------- 13 files changed, 53 insertions(+), 53 deletions(-) diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index 6d53dc463c1..e51c181f55c 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -511,7 +511,7 @@ CopySendString(CopyState cstate, const char *str) static void CopySendChar(CopyState cstate, char c) { - appendStringInfoCharMacro(cstate->fe_msgbuf, c); + appendStringInfoChar(cstate->fe_msgbuf, c); } static void diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c index efd7201d611..08a0b069ed1 100644 --- a/src/backend/commands/explain.c +++ b/src/backend/commands/explain.c @@ -4551,16 +4551,16 @@ ExplainXMLTag(const char *tagname, int flags, ExplainState *es) if ((flags & X_NOWHITESPACE) == 0) appendStringInfoSpaces(es->str, 2 * es->indent); - appendStringInfoCharMacro(es->str, '<'); + appendStringInfoChar(es->str, '<'); if ((flags & X_CLOSING) != 0) - appendStringInfoCharMacro(es->str, '/'); + appendStringInfoChar(es->str, '/'); for (s = tagname; *s; s++) appendStringInfoChar(es->str, strchr(valid, *s) ? *s : '-'); if ((flags & X_CLOSE_IMMEDIATE) != 0) appendStringInfoString(es->str, " /"); - appendStringInfoCharMacro(es->str, '>'); + appendStringInfoChar(es->str, '>'); if ((flags & X_NOWHITESPACE) == 0) - appendStringInfoCharMacro(es->str, '\n'); + appendStringInfoChar(es->str, '\n'); } /* diff --git a/src/backend/libpq/pqformat.c b/src/backend/libpq/pqformat.c index a6f990c2d29..999252681c2 100644 --- a/src/backend/libpq/pqformat.c +++ b/src/backend/libpq/pqformat.c @@ -234,7 +234,7 @@ pq_send_ascii_string(StringInfo buf, const char *str) if (IS_HIGHBIT_SET(ch)) ch = '?'; - appendStringInfoCharMacro(buf, ch); + appendStringInfoChar(buf, ch); } appendStringInfoChar(buf, '\0'); } diff --git a/src/backend/utils/adt/json.c b/src/backend/utils/adt/json.c index 641ae3fdf8e..08f3eeb927f 100644 --- a/src/backend/utils/adt/json.c +++ b/src/backend/utils/adt/json.c @@ -1280,7 +1280,7 @@ escape_json(StringInfo buf, const char *str) { const char *p; - appendStringInfoCharMacro(buf, '"'); + appendStringInfoChar(buf, '"'); for (p = str; *p; p++) { switch (*p) @@ -1310,11 +1310,11 @@ escape_json(StringInfo buf, const char *str) if ((unsigned char) *p < ' ') appendStringInfo(buf, "\\u%04x", (int) *p); else - appendStringInfoCharMacro(buf, *p); + appendStringInfoChar(buf, *p); break; } } - appendStringInfoCharMacro(buf, '"'); + appendStringInfoChar(buf, '"'); } /* diff --git a/src/backend/utils/adt/jsonb.c b/src/backend/utils/adt/jsonb.c index 1e9ca046c69..7e8792dff62 100644 --- a/src/backend/utils/adt/jsonb.c +++ b/src/backend/utils/adt/jsonb.c @@ -515,7 +515,7 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len, bool if (!v.val.array.rawScalar) { add_indent(out, use_indent && !last_was_key, level); - appendStringInfoCharMacro(out, '['); + appendStringInfoChar(out, '['); } else raw_scalar = true; @@ -528,7 +528,7 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len, bool appendBinaryStringInfo(out, ", ", ispaces); add_indent(out, use_indent && !last_was_key, level); - appendStringInfoCharMacro(out, '{'); + appendStringInfoChar(out, '{'); first = true; level++; @@ -576,14 +576,14 @@ JsonbToCStringWorker(StringInfo out, JsonbContainer *in, int estimated_len, bool if (!raw_scalar) { add_indent(out, use_indent, level); - appendStringInfoCharMacro(out, ']'); + appendStringInfoChar(out, ']'); } first = false; break; case WJB_END_OBJECT: level--; add_indent(out, use_indent, level); - appendStringInfoCharMacro(out, '}'); + appendStringInfoChar(out, '}'); first = false; break; default: @@ -605,7 +605,7 @@ add_indent(StringInfo out, bool indent, int level) { int i; - appendStringInfoCharMacro(out, '\n'); + appendStringInfoChar(out, '\n'); for (i = 0; i < level; i++) appendBinaryStringInfo(out, " ", 4); } diff --git a/src/backend/utils/adt/jsonfuncs.c b/src/backend/utils/adt/jsonfuncs.c index 5a09d65fdce..eefb402e010 100644 --- a/src/backend/utils/adt/jsonfuncs.c +++ b/src/backend/utils/adt/jsonfuncs.c @@ -3979,7 +3979,7 @@ sn_object_start(void *state) { StripnullState *_state = (StripnullState *) state; - appendStringInfoCharMacro(_state->strval, '{'); + appendStringInfoChar(_state->strval, '{'); } static void @@ -3987,7 +3987,7 @@ sn_object_end(void *state) { StripnullState *_state = (StripnullState *) state; - appendStringInfoCharMacro(_state->strval, '}'); + appendStringInfoChar(_state->strval, '}'); } static void @@ -3995,7 +3995,7 @@ sn_array_start(void *state) { StripnullState *_state = (StripnullState *) state; - appendStringInfoCharMacro(_state->strval, '['); + appendStringInfoChar(_state->strval, '['); } static void @@ -4003,7 +4003,7 @@ sn_array_end(void *state) { StripnullState *_state = (StripnullState *) state; - appendStringInfoCharMacro(_state->strval, ']'); + appendStringInfoChar(_state->strval, ']'); } static void @@ -4023,7 +4023,7 @@ sn_object_field_start(void *state, char *fname, bool isnull) } if (_state->strval->data[_state->strval->len - 1] != '{') - appendStringInfoCharMacro(_state->strval, ','); + appendStringInfoChar(_state->strval, ','); /* * Unfortunately we don't have the quoted and escaped string any more, so @@ -4031,7 +4031,7 @@ sn_object_field_start(void *state, char *fname, bool isnull) */ escape_json(_state->strval, fname); - appendStringInfoCharMacro(_state->strval, ':'); + appendStringInfoChar(_state->strval, ':'); } static void @@ -4040,7 +4040,7 @@ sn_array_element_start(void *state, bool isnull) StripnullState *_state = (StripnullState *) state; if (_state->strval->data[_state->strval->len - 1] != '[') - appendStringInfoCharMacro(_state->strval, ','); + appendStringInfoChar(_state->strval, ','); } static void @@ -5364,7 +5364,7 @@ transform_string_values_object_start(void *state) { TransformJsonStringValuesState *_state = (TransformJsonStringValuesState *) state; - appendStringInfoCharMacro(_state->strval, '{'); + appendStringInfoChar(_state->strval, '{'); } static void @@ -5372,7 +5372,7 @@ transform_string_values_object_end(void *state) { TransformJsonStringValuesState *_state = (TransformJsonStringValuesState *) state; - appendStringInfoCharMacro(_state->strval, '}'); + appendStringInfoChar(_state->strval, '}'); } static void @@ -5380,7 +5380,7 @@ transform_string_values_array_start(void *state) { TransformJsonStringValuesState *_state = (TransformJsonStringValuesState *) state; - appendStringInfoCharMacro(_state->strval, '['); + appendStringInfoChar(_state->strval, '['); } static void @@ -5388,7 +5388,7 @@ transform_string_values_array_end(void *state) { TransformJsonStringValuesState *_state = (TransformJsonStringValuesState *) state; - appendStringInfoCharMacro(_state->strval, ']'); + appendStringInfoChar(_state->strval, ']'); } static void @@ -5397,14 +5397,14 @@ transform_string_values_object_field_start(void *state, char *fname, bool isnull TransformJsonStringValuesState *_state = (TransformJsonStringValuesState *) state; if (_state->strval->data[_state->strval->len - 1] != '{') - appendStringInfoCharMacro(_state->strval, ','); + appendStringInfoChar(_state->strval, ','); /* * Unfortunately we don't have the quoted and escaped string any more, so * we have to re-escape it. */ escape_json(_state->strval, fname); - appendStringInfoCharMacro(_state->strval, ':'); + appendStringInfoChar(_state->strval, ':'); } static void @@ -5413,7 +5413,7 @@ transform_string_values_array_element_start(void *state, bool isnull) TransformJsonStringValuesState *_state = (TransformJsonStringValuesState *) state; if (_state->strval->data[_state->strval->len - 1] != '[') - appendStringInfoCharMacro(_state->strval, ','); + appendStringInfoChar(_state->strval, ','); } static void diff --git a/src/backend/utils/adt/jsonpath.c b/src/backend/utils/adt/jsonpath.c index 3c0dc38a7f8..43d5914477a 100644 --- a/src/backend/utils/adt/jsonpath.c +++ b/src/backend/utils/adt/jsonpath.c @@ -441,13 +441,13 @@ alignStringInfoInt(StringInfo buf) switch (INTALIGN(buf->len) - buf->len) { case 3: - appendStringInfoCharMacro(buf, 0); + appendStringInfoChar(buf, 0); /* FALLTHROUGH */ case 2: - appendStringInfoCharMacro(buf, 0); + appendStringInfoChar(buf, 0); /* FALLTHROUGH */ case 1: - appendStringInfoCharMacro(buf, 0); + appendStringInfoChar(buf, 0); /* FALLTHROUGH */ default: break; diff --git a/src/backend/utils/adt/rowtypes.c b/src/backend/utils/adt/rowtypes.c index 80cba2f4c26..987ebc9d7f8 100644 --- a/src/backend/utils/adt/rowtypes.c +++ b/src/backend/utils/adt/rowtypes.c @@ -424,17 +424,17 @@ record_out(PG_FUNCTION_ARGS) /* And emit the string */ if (nq) - appendStringInfoCharMacro(&buf, '"'); + appendStringInfoChar(&buf, '"'); for (tmp = value; *tmp; tmp++) { char ch = *tmp; if (ch == '"' || ch == '\\') - appendStringInfoCharMacro(&buf, ch); - appendStringInfoCharMacro(&buf, ch); + appendStringInfoChar(&buf, ch); + appendStringInfoChar(&buf, ch); } if (nq) - appendStringInfoCharMacro(&buf, '"'); + appendStringInfoChar(&buf, '"'); } appendStringInfoChar(&buf, ')'); diff --git a/src/backend/utils/adt/varlena.c b/src/backend/utils/adt/varlena.c index 2eaabd6231d..f3c1a63455a 100644 --- a/src/backend/utils/adt/varlena.c +++ b/src/backend/utils/adt/varlena.c @@ -5557,7 +5557,7 @@ text_format(PG_FUNCTION_ARGS) */ if (*cp != '%') { - appendStringInfoCharMacro(&str, *cp); + appendStringInfoChar(&str, *cp); continue; } @@ -5566,7 +5566,7 @@ text_format(PG_FUNCTION_ARGS) /* Easy case: %% outputs a single % */ if (*cp == '%') { - appendStringInfoCharMacro(&str, *cp); + appendStringInfoChar(&str, *cp); continue; } diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index 4c299057a6f..9718cd05912 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -2373,7 +2373,7 @@ escape_xml(const char *str) appendStringInfoString(&buf, " "); break; default: - appendStringInfoCharMacro(&buf, *p); + appendStringInfoChar(&buf, *p); break; } } diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index e9762010309..3697bdc53aa 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -2630,14 +2630,14 @@ appendCSVLiteral(StringInfo buf, const char *data) if (p == NULL) return; - appendStringInfoCharMacro(buf, '"'); + appendStringInfoChar(buf, '"'); while ((c = *p++) != '\0') { if (c == '"') - appendStringInfoCharMacro(buf, '"'); - appendStringInfoCharMacro(buf, c); + appendStringInfoChar(buf, '"'); + appendStringInfoChar(buf, c); } - appendStringInfoCharMacro(buf, '"'); + appendStringInfoChar(buf, '"'); } /* @@ -3407,9 +3407,9 @@ append_with_tabs(StringInfo buf, const char *str) while ((ch = *str++) != '\0') { - appendStringInfoCharMacro(buf, ch); + appendStringInfoChar(buf, ch); if (ch == '\n') - appendStringInfoCharMacro(buf, '\t'); + appendStringInfoChar(buf, '\t'); } } diff --git a/src/backend/utils/mb/stringinfo_mb.c b/src/backend/utils/mb/stringinfo_mb.c index 5f51f538c18..a9f43d0b32b 100644 --- a/src/backend/utils/mb/stringinfo_mb.c +++ b/src/backend/utils/mb/stringinfo_mb.c @@ -61,7 +61,7 @@ appendStringInfoStringQuoted(StringInfo str, const char *s, int maxlen) ellipsis = false; } - appendStringInfoCharMacro(str, '\''); + appendStringInfoChar(str, '\''); while ((chunk_end = strchr(chunk_search_start, '\'')) != NULL) { diff --git a/contrib/tcn/tcn.c b/contrib/tcn/tcn.c index 552f107bf6b..d38d6e3bca8 100644 --- a/contrib/tcn/tcn.c +++ b/contrib/tcn/tcn.c @@ -32,15 +32,15 @@ PG_MODULE_MAGIC; static void strcpy_quoted(StringInfo r, const char *s, const char q) { - appendStringInfoCharMacro(r, q); + appendStringInfoChar(r, q); while (*s) { if (*s == q) - appendStringInfoCharMacro(r, q); - appendStringInfoCharMacro(r, *s); + appendStringInfoChar(r, q); + appendStringInfoChar(r, *s); s++; } - appendStringInfoCharMacro(r, q); + appendStringInfoChar(r, q); } /* @@ -147,17 +147,17 @@ triggered_change_notification(PG_FUNCTION_ARGS) foundPK = true; strcpy_quoted(payload, RelationGetRelationName(rel), '"'); - appendStringInfoCharMacro(payload, ','); - appendStringInfoCharMacro(payload, operation); + appendStringInfoChar(payload, ','); + appendStringInfoChar(payload, operation); for (i = 0; i < indnkeyatts; i++) { int colno = index->indkey.values[i]; Form_pg_attribute attr = TupleDescAttr(tupdesc, colno - 1); - appendStringInfoCharMacro(payload, ','); + appendStringInfoChar(payload, ','); strcpy_quoted(payload, NameStr(attr->attname), '"'); - appendStringInfoCharMacro(payload, '='); + appendStringInfoChar(payload, '='); strcpy_quoted(payload, SPI_getvalue(trigtuple, tupdesc, colno), '\''); } -- 2.25.0.114.g5b0ca878e0