1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-01 01:04:50 +03:00

doc: wire protocol data type for history file content is bytea

Document that though the history file content is marked as bytea, it is
the same a text, and neither is btyea-escaped or encoding converted.

Reported-by: Brar Piening

Discussion: https://postgr.es/m/6a1b9cd9-17e3-df67-be55-86102af6bdf5@gmx.de

Backpatch-through: 13 - 9.5 (not master)
This commit is contained in:
Bruce Momjian 2020-11-12 14:33:28 -05:00
parent 068de9dd40
commit fe904ac20b
2 changed files with 8 additions and 1 deletions

View File

@ -1623,7 +1623,10 @@ The commands accepted in walsender mode are:
<para>
Requests the server to send over the timeline history file for timeline
<replaceable class="parameter">tli</replaceable>. Server replies with a
result set of a single row, containing two fields:
result set of a single row, containing two fields. While the
fields are labeled as <type>text</type> and <type>bytea</type>,
they effectively return raw bytes, with no escaping or encoding
conversion:
</para>
<para>

View File

@ -463,6 +463,10 @@ SendTimeLineHistory(TimeLineHistoryCmd *cmd)
pq_sendstring(&buf, "content"); /* col name */
pq_sendint(&buf, 0, 4); /* table oid */
pq_sendint(&buf, 0, 2); /* attnum */
/*
* While this is labeled as BYTEAOID, it is the same output format
* as TEXTOID above.
*/
pq_sendint(&buf, BYTEAOID, 4); /* type oid */
pq_sendint(&buf, -1, 2); /* typlen */
pq_sendint(&buf, 0, 4); /* typmod */