Added version_sql() function and consistency check of sql version

This commit is contained in:
Daniele Varrazzo
2012-11-15 23:37:09 +00:00
parent 1bcaf267b3
commit deaae7dd72
4 changed files with 31 additions and 5 deletions

View File

@ -30,7 +30,7 @@ DATA_built = pg_repack.sql
DATA = uninstall_pg_repack.sql
endif
USE_PGXS = 1 # use pgxs if not in contrib directory
USE_PGXS = 1
PGXS := $(shell $(PG_CONFIG) --pgxs)
include $(PGXS)
@ -40,11 +40,12 @@ LIBS := $(filter-out -lxslt, $(LIBS))
pg_repack.sql: pg_repack.sql.in
echo "BEGIN;\n" > $@; \
sed 's,MODULE_PATHNAME,$$libdir/$(MODULE_big),g' $< >> $@; \
sed 's,MODULE_PATHNAME,$$libdir/$(MODULE_big),g' $< \
| sed 's,REPACK_VERSION,$(REPACK_VERSION),g' >> $@; \
echo "\nCOMMIT;" >> $@;
pg_repack--$(REPACK_VERSION).sql: pg_repack.sql.in
cat $< > $@;
sed 's,REPACK_VERSION,$(REPACK_VERSION),g' $< > $@;
pg_repack.control: pg_repack.control.in
sed 's,REPACK_VERSION,$(REPACK_VERSION),g' $< > $@

View File

@ -12,6 +12,10 @@ CREATE FUNCTION repack.version() RETURNS text AS
'MODULE_PATHNAME', 'repack_version'
LANGUAGE C IMMUTABLE STRICT;
CREATE FUNCTION repack.version_sql() RETURNS text AS
$$SELECT 'pg_repack REPACK_VERSION'::text$$
LANGUAGE SQL IMMUTABLE STRICT;
CREATE AGGREGATE repack.array_accum (
sfunc = array_append,
basetype = anyelement,