aboutsummaryrefslogtreecommitdiff
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:11 +0300
commitf66912b0a0387aab5f5bbcd9d56ab92200395d2e (patch)
tree1fc82e93859e379b25086be870fd7f9f6a39758d
parent445e31bdc749e56376993232e5c2cc4931161322 (diff)
downloadpostgresql-f66912b0a0387aab5f5bbcd9d56ab92200395d2e.tar.gz
postgresql-f66912b0a0387aab5f5bbcd9d56ab92200395d2e.zip
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
-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 363f84b9f34..4f8c4d040a0 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 0bac3423224..12602758645 100644
--- a/doc/src/sgml/spi.sgml
+++ b/doc/src/sgml/spi.sgml
@@ -4583,17 +4583,19 @@ INSERT INTO a SELECT * FROM a;
PG_MODULE_MAGIC;
-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();
@@ -4626,17 +4628,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"/>.):