summaryrefslogtreecommitdiff
path: root/src/include/access/printsimple.h
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2017-01-24 16:53:56 -0500
committerRobert Haas <rhaas@postgresql.org>2017-01-24 16:53:56 -0500
commita84069d9350400c860d5e932b50dfd337aa407b0 (patch)
treeac278978c902539d065211f2fb47c4a04d4b40f3 /src/include/access/printsimple.h
parent7b4ac19982a77a1a2a6f096c4a11ee7325a14d2c (diff)
Add a new DestReceiver for printing tuples without catalog access.
If you create a DestReciver of type DestRemote and try to use it from a replication connection that is not bound to a specific daabase, or any other hypothetical type of backend that is not bound to a specific database, it will fail because it doesn't have a pg_proc catalog to look up properties of the types being printed. In general, that's an unavoidable problem, but we can hardwire the properties of a few builtin types in order to support utility commands. This new DestReceiver of type DestRemoteSimple does just that. Patch by me, reviewed by Michael Paquier. Discussion: http://postgr.es/m/CA+TgmobNo4qz06wHEmy9DszAre3dYx-WNhHSCbU9SAwf+9Ft6g@mail.gmail.com
Diffstat (limited to 'src/include/access/printsimple.h')
-rw-r--r--src/include/access/printsimple.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/include/access/printsimple.h b/src/include/access/printsimple.h
new file mode 100644
index 00000000000..3f3e7a38400
--- /dev/null
+++ b/src/include/access/printsimple.h
@@ -0,0 +1,23 @@
+/*-------------------------------------------------------------------------
+ *
+ * printsimple.h
+ * print simple tuples without catalog access
+ *
+ * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1994, Regents of the University of California
+ *
+ * src/include/access/printsimple.h
+ *
+ *-------------------------------------------------------------------------
+ */
+
+#ifndef PRINTSIMPLE_H
+#define PRINTSIMPLE_H
+
+#include "tcop/dest.h"
+
+extern bool printsimple(TupleTableSlot *slot, DestReceiver *self);
+extern void printsimple_startup(DestReceiver *self, int operation,
+ TupleDesc tupdesc);
+
+#endif /* PRINTSIMPLE_H */