pgsql: Add PL/Sample to src/test/modules/

Started by Michael Paquieralmost 6 years ago1 messagescomitters
Jump to latest
#1Michael Paquier
michael@paquier.xyz

Add PL/Sample to src/test/modules/

PL/Sample is an example template of procedural-language handler. This
can be used as a base to implement a custom PL, or as a facility to test
APIs dedicated to PLs. Much more could be done in this module, like
adding a simple validator, but this is left as future work.

The documentation included originally some C code to understand the
basics of PL handler implementation, but it was outdated, and not really
helpful either if trying to implement a new procedural language,
particularly when it came to the integration of a PL installation with
CREATE EXTENSION.

Author: Mark Wong
Reviewed-by: Tom Lane, Michael Paquier
Discussion: /messages/by-id/20200612172648.GA3327@2ndQuadrant.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/adbe62d04b360bbd408d97e447932d8078485972

Modified Files
--------------
doc/src/sgml/plhandler.sgml | 60 +-------
src/test/modules/Makefile | 1 +
src/test/modules/plsample/.gitignore | 3 +
src/test/modules/plsample/Makefile | 20 +++
src/test/modules/plsample/README | 6 +
src/test/modules/plsample/expected/plsample.out | 36 +++++
src/test/modules/plsample/plsample--1.0.sql | 14 ++
src/test/modules/plsample/plsample.c | 183 ++++++++++++++++++++++++
src/test/modules/plsample/plsample.control | 8 ++
src/test/modules/plsample/sql/plsample.sql | 15 ++
10 files changed, 290 insertions(+), 56 deletions(-)