Avoid symbol conflict causing segfault when pg_statsinfo is installed.

Control symbol visibility for functions exported in the pg_repack
shared library, to avoid symbol conflicts with other libraries,
particularly those which may be loaded via shared_preload_libraries
and use conflicting function definitions of our common pgut code,
such as pg_statsinfo.

Verified this fix on my Debian x86_64 machine with PostgreSQL 9.4 and
pg_statsinfo 3.0.2. Would be nice to test this fix on a few other
platforms such as OS X, though I had some difficulty getting
pg_statsinfo to build on OS X. Hopefully closes Issue #43, thanks
to bwtakacy for the report and demonstration of the commited fix in
pg_reorg.
This commit is contained in:
Josh Kupershmidt
2015-05-31 18:59:05 -04:00
parent 70cc5769c9
commit 949c0ad150
2 changed files with 21 additions and 0 deletions

View File

@ -17,6 +17,8 @@ MODULE_big = $(EXTENSION)
OBJS = repack.o pgut/pgut-be.o pgut/pgut-spi.o
SHLIB_EXPORTS = exports.txt
# The version number of the program. It should be the same of the library.
REPACK_VERSION = $(shell grep '"version":' ../META.json | head -1 \
| sed -e 's/[ ]*"version":[ ]*"\(.*\)",/\1/')