summaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2018-05-02 17:51:11 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2018-05-02 17:51:32 +0300
commit53945b4c13d5342c3e72fcb5a04d6234b9812f44 (patch)
tree589ca7927030d98832f25ac775544b62dca18b83 /doc/src
parentd86e9e21058cfd53f0b6a3cabee68446aa255775 (diff)
Remove remaining references to version-0 calling convention in docs.
Support for version-0 calling convention was removed in PostgreSQL v10. Change the SPI example to use version 1 convention, so that it actually works. Author: John Naylor Discussion: https://www.postgresql.org/message-id/CAJVSVGVydmhLBdm80Rw3G8Oq5TnA7eCxUv065yoZfNfLbF1tzA@mail.gmail.com
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/plhandler.sgml5
-rw-r--r--doc/src/sgml/spi.sgml18
2 files changed, 9 insertions, 14 deletions
diff --git a/doc/src/sgml/plhandler.sgml b/doc/src/sgml/plhandler.sgml
index 57a2a05ed27..91a8d9a5bad 100644
--- a/doc/src/sgml/plhandler.sgml
+++ b/doc/src/sgml/plhandler.sgml
@@ -11,9 +11,8 @@
<para>
All calls to functions that are written in a language other than
the current <quote>version 1</quote> interface for compiled
- languages (this includes functions in user-defined procedural languages,
- functions written in SQL, and functions using the version 0 compiled
- language interface) go through a <firstterm>call handler</firstterm>
+ languages (this includes functions in user-defined procedural languages
+ and functions written in SQL) go through a <firstterm>call handler</firstterm>
function for the specific language. It is the responsibility of
the call handler to execute the function in a meaningful way, such
as by interpreting the supplied source text. This chapter outlines
diff --git a/doc/src/sgml/spi.sgml b/doc/src/sgml/spi.sgml
index 9ce1270d376..0110d02e5a6 100644
--- a/doc/src/sgml/spi.sgml
+++ b/doc/src/sgml/spi.sgml
@@ -4355,17 +4355,19 @@ INSERT INTO a SELECT * FROM a;
PG_MODULE_MAGIC;
#endif
-int64 execq(text *sql, int cnt);
+PG_FUNCTION_INFO_V1(execq);
-int64
-execq(text *sql, int cnt)
+Datum
+execq(PG_FUNCTION_ARGS)
{
char *command;
+ int cnt;
int ret;
uint64 proc;
/* Convert given text object to a C string */
- command = text_to_cstring(sql);
+ command = text_to_cstring(PG_GETARG_TEXT_PP(1));
+ cnt = PG_GETARG_INT32(2);
SPI_connect();
@@ -4398,17 +4400,11 @@ execq(text *sql, int cnt)
SPI_finish();
pfree(command);
- return (proc);
+ PG_RETURN_INT64(proc);
}
</programlisting>
<para>
- (This function uses call convention version 0, to make the example
- easier to understand. In real applications you should use the new
- version 1 interface.)
- </para>
-
- <para>
This is how you declare the function after having compiled it into
a shared library (details are in <xref linkend="dfunc">.):