diff options
author | Robert Haas <rhaas@postgresql.org> | 2017-02-01 13:42:41 -0500 |
---|---|---|
committer | Robert Haas <rhaas@postgresql.org> | 2017-02-01 13:42:41 -0500 |
commit | bbd8550bce146f86e5e883f1232292a975c314fb (patch) | |
tree | 6a656f1a6c3d130b36c26e08f4880edd368e287f /src/backend/access/common/printsimple.c | |
parent | c3e3844a92fe42109e4106314f7d229f784a7d0a (diff) | |
download | postgresql-bbd8550bce146f86e5e883f1232292a975c314fb.tar.gz postgresql-bbd8550bce146f86e5e883f1232292a975c314fb.zip |
Refactor other replication commands to use DestRemoteSimple.
Commit a84069d9350400c860d5e932b50dfd337aa407b0 added a new type of
DestReceiver to avoid duplicating the existing code for the SHOW
command, but it turns out we can leverage that new DestReceiver
type in a few more places, saving some code.
Michael Paquier, reviewed by Andres Freund and by me.
Discussion: http://postgr.es/m/CAB7nPqSdFOQC0evc0r1nJeQyGBqjBrR41MC4rcMqUUpoJaZbtQ%40mail.gmail.com
Discussion: http://postgr.es/m/CAB7nPqT2K4XFT1JgqufFBjsOc-NUKXg5qBDucHPMbk6Xi1kYaA@mail.gmail.com
Diffstat (limited to 'src/backend/access/common/printsimple.c')
-rw-r--r-- | src/backend/access/common/printsimple.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/backend/access/common/printsimple.c b/src/backend/access/common/printsimple.c index 420de65e207..5fe1c72da83 100644 --- a/src/backend/access/common/printsimple.c +++ b/src/backend/access/common/printsimple.c @@ -22,6 +22,7 @@ #include "catalog/pg_type.h" #include "fmgr.h" #include "libpq/pqformat.h" +#include "utils/builtins.h" /* * At startup time, send a RowDescription message. @@ -99,6 +100,26 @@ printsimple(TupleTableSlot *slot, DestReceiver *self) } break; + case INT4OID: + { + int32 num = DatumGetInt32(value); + char str[12]; /* sign, 10 digits and '\0' */ + + pg_ltoa(num, str); + pq_sendcountedtext(&buf, str, strlen(str), false); + } + break; + + case INT8OID: + { + int64 num = DatumGetInt64(value); + char str[23]; /* sign, 21 digits and '\0' */ + + pg_lltoa(num, str); + pq_sendcountedtext(&buf, str, strlen(str), false); + } + break; + default: elog(ERROR, "unsupported type OID: %u", attr->atttypid); } |