diff options
Diffstat (limited to 'src/backend/access')
-rw-r--r-- | src/backend/access/common/printsimple.c | 21 | ||||
-rw-r--r-- | src/backend/access/common/tupdesc.c | 8 |
2 files changed, 29 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); } diff --git a/src/backend/access/common/tupdesc.c b/src/backend/access/common/tupdesc.c index 083c0303dcf..4e2ebe1ae7e 100644 --- a/src/backend/access/common/tupdesc.c +++ b/src/backend/access/common/tupdesc.c @@ -629,6 +629,14 @@ TupleDescInitBuiltinEntry(TupleDesc desc, att->attstorage = 'p'; att->attcollation = InvalidOid; break; + + case INT8OID: + att->attlen = 8; + att->attbyval = FLOAT8PASSBYVAL; + att->attalign = 'd'; + att->attstorage = 'p'; + att->attcollation = InvalidOid; + break; } } |