debian/0000775000000000000000000000000012320563077007175 5ustar debian/postgres-xc-client.install0000664000000000000000000000060712204651462014317 0ustar usr/bin/clusterdb usr/bin/pg_dumpall usr/bin/pg_dump usr/bin/createdb usr/bin/createlang usr/bin/createuser usr/bin/dropdb usr/bin/droplang usr/bin/dropuser usr/bin/reindexdb usr/bin/pg_restore usr/bin/psql usr/bin/vacuumdb usr/share/postgres-xc/psqlrc.sample usr/share/locale/*/LC_MESSAGES/pg_dump-*.mo usr/share/locale/*/LC_MESSAGES/psql-*.mo usr/share/locale/*/LC_MESSAGES/pgscripts-*.mo debian/copyright0000664000000000000000000000564112204651462011133 0ustar Format: http://dep.debian.net/deps/dep5 Upstream-Name: postgres-xc Source: http://postgres-xc.sourceforge.net/ Files: * Copyright: 2010-2011, Nippon Telegraph and Telephone Corporation 1996-2010, PostgreSQL Global Development Group 1994, The Regents of the University of California License: BSD Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies. . IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. . THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. . IN NO EVENT SHALL POSTGRESQL GLOBAL DEVELOPMENT GROUP BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF POSTGRESQL GLOBAL DEVELOPMENT GROUP HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. . POSTGRESQL GLOBAL DEVELOPMENT GROUP SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE POSTGRESQL GLOBAL DEVELOPMENT GROUP HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. . Recent version: http://postgres-xc.sourceforge.net/license.html Files: debian/* Copyright: 2011-2012, Vladimir Stavrinov Michael Meskes License: GPL-2+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". debian/postgres-xc.lintian-overrides0000664000000000000000000000006412204651462015030 0ustar postgres-xc: possible-gpl-code-linked-with-openssl debian/postgres-xc.logrotate0000664000000000000000000000026512204651462013375 0ustar /var/log/postgres-xc/*.log { weekly rotate 10 copytruncate delaycompress compress notifempty missingok su root postgres-xc } debian/postgres-xc-server-dev.preinst0000664000000000000000000000050112204651462015132 0ustar #!/bin/sh set -e case "$1" in install|upgrade) dpkg-divert --package postgres-xc-server-dev --rename --divert /usr/bin/pg_config.libpq-dev --add /usr/bin/pg_config ;; abort-upgrade) ;; *) echo "$0 called with unknown argument \`$1'" 1>&2 exit 1 ;; esac #DEBHELPER# debian/postgres-xc.postrm0000664000000000000000000000061012204651462012713 0ustar #!/bin/sh set -e PGXC_CONFIG=/etc/postgres-xc PGXC_DATA=/var/lib/postgres-xc PGXC_LOG=/var/log/postgres-xc PGXC_RUN=/var/run/postgresql if [ "$1" = purge ]; then # remove socket directory rm -rf $PGXC_RUN # remove database directory rm -rf $PGXC_DATA # remove log directory rm -rf $PGXC_LOG # remove config directory rm -rf $PGXC_CONFIG fi #DEBHELPER# debian/postgres-xc-contrib.install0000664000000000000000000000302312204651462014474 0ustar usr/share/doc/postgres-xc-doc/extension/* usr/share/doc/postgres-xc-contrib usr/share/postgres-xc/extension/* usr/lib/postgres-xc/auth_delay.so usr/lib/postgres-xc/_int.so usr/lib/postgres-xc/autoinc.so usr/lib/postgres-xc/btree_gist.so usr/lib/postgres-xc/chkpass.so usr/lib/postgres-xc/cube.so usr/lib/postgres-xc/dblink.so usr/lib/postgres-xc/dummy_seclabel.so usr/lib/postgres-xc/earthdistance.so usr/lib/postgres-xc/file_fdw.so usr/lib/postgres-xc/fuzzystrmatch.so usr/lib/postgres-xc/insert_username.so usr/lib/postgres-xc/lo.so usr/lib/postgres-xc/ltree.so usr/lib/postgres-xc/moddatetime.so usr/lib/postgres-xc/pageinspect.so usr/lib/postgres-xc/passwordcheck.so usr/lib/postgres-xc/pg_trgm.so usr/lib/postgres-xc/pgcrypto.so usr/lib/postgres-xc/pgstattuple.so usr/lib/postgres-xc/refint.so usr/lib/postgres-xc/seg.so usr/lib/postgres-xc/tablefunc.so usr/lib/postgres-xc/timetravel.so usr/lib/postgres-xc/pgxml.so usr/lib/postgres-xc/pg_buffercache.so usr/lib/postgres-xc/adminpack.so usr/lib/postgres-xc/sslinfo.so usr/lib/postgres-xc/isn.so usr/lib/postgres-xc/hstore.so usr/lib/postgres-xc/pgrowlocks.so usr/lib/postgres-xc/pg_freespacemap.so usr/lib/postgres-xc/uuid-ossp.so usr/lib/postgres-xc/test_parser.so usr/lib/postgres-xc/dict_int.so usr/lib/postgres-xc/dict_xsyn.so usr/lib/postgres-xc/auto_explain.so usr/lib/postgres-xc/pg_stat_statements.so usr/lib/postgres-xc/citext.so usr/lib/postgres-xc/btree_gin.so usr/lib/postgres-xc/unaccent.so usr/bin/pg_archivecleanup usr/bin/oid2name usr/bin/pgbench usr/bin/vacuumlo usr/bin/pg_standby debian/postgres-xc.init0000775000000000000000000000770512204651462012351 0ustar #!/bin/sh set -e #set -x -v ### BEGIN INIT INFO # Provides: postgres-xc # Required-Start: $local_fs $remote_fs $network $time # Required-Stop: $local_fs $remote_fs $network $time # Should-Start: $syslog # Should-Stop: $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Postgres-XC RDBMS server ### END INIT INFO PGXC_DATA=/var/lib/postgres-xc PGXC_LOG=/var/log/postgres-xc PGXC_RUN=/var/run/postgresql . /lib/lsb/init-functions if [ -r /etc/default/postgres-xc ]; then . /etc/default/postgres-xc fi # create socket directory [ -d $PGXC_RUN ] || mkdir -p $PGXC_RUN chown postgres-xc.postgres-xc $PGXC_RUN chmod 2775 $PGXC_RUN check_if_running() { status=0 case "$1" in gtm) pidfile=gtm.pid sleep 2 ;; postgres) pidfile=postmaster.pid confport=$(grep -si '^port *=' $PGXC_DATA/$2/postgresql.conf | cut -f2 -d= | sed -e 's/#.*$//' -e 's/ //g') port=${confport:=5432} # wait for server to come up, but no more than 10 seconds i=1 [ -z "$3" ] && while [ ! -S $PGXC_RUN/.s.PGSQL.$port ]; do i=$((i+1)) sleep 1 [ $i -gt 10 ] && break done ;; esac # check if it is really running if [ -r $PGXC_DATA/$2/$pidfile ]; then PID=`head -n 1 $PGXC_DATA/$2/$pidfile` || true if [ -z "$PID" ]; then status=1 else [ "`ps h -o comm -p $PID`" != $1 ] && status=1 fi else status=1 fi return 0 } do_ctl() { ACTION=$1 STATUS=0 status=0 [ "$ACTION" = "stop" ] && { $FAST_STOP && STOP_MODE="-mf" } for TYPE in datanode coordinator gtm; do case $TYPE in gtm) PG_CTL=gtm_ctl PG_START=gtm ;; coordinator|datanode) PG_CTL=pg_ctl PG_START=postgres ;; esac log_daemon_msg "$2 Postgres-XC ${TYPE}" for NODE in $(ls /etc/postgres-xc/$TYPE/); do [ -f /etc/postgres-xc/$TYPE/$NODE/run ] && { if [ "$ACTION" = "reload" ] && [ "$TYPE" = "gtm" ]; then ACTION="restart" fi [ "$ACTION" = "stop" ] && check_if_running $PG_START $NODE stop if [ $status -eq 1 ]; then log_progress_msg "$NODE is not running" else ERRMSG=$(start-stop-daemon -c postgres-xc \ -Sx /usr/bin/$PG_CTL -- $ACTION $STOP_MODE \ -D $PGXC_DATA/$NODE -Z $TYPE \ -l $PGXC_LOG/datanode.log STATUS=$? if $FAST_STOP && [ $STATUS -gt 0 ] && [ "$ACTION" = "stop" ]; then STATUS=0 start-stop-daemon -c postgres-xc \ -Sx /usr/bin/$PG_CTL -- stop -mi \ -D $PGXC_DATA/$NODE -Z $TYPE \ -l $PGXC_LOG/datanode.log || STATUS=$? fi) REPORT=$NODE [ "$ACTION" = "status" ] && REPORT=$ERRMSG log_progress_msg "$REPORT" if [ $STATUS -eq 0 ] && [ "$ACTION" = "start" ]; then check_if_running $PG_START $NODE STATUS=$status fi fi } done log_end_msg $STATUS done } case "$1" in start) do_ctl start Starting ;; restart) do_ctl restart Restarting ;; status) do_ctl status Status ;; stop) do_ctl stop Stopping ;; reload) do_ctl reload Reloading ;; force-reload) $0 restart ;; *) echo "Usage: $0 {start|stop|restart|reload|force-reload|status}" exit 1 ;; esac exit 0 debian/postgres-xc-server-dev.postrm0000664000000000000000000000032312204651462014774 0ustar #!/bin/sh set -e case "$1" in remove|abort-install|disappear) dpkg-divert --package postgres-xc-server-dev --remove --rename --divert /usr/bin/pg_config.libpq-dev /usr/bin/pg_config ;; esac #DEBHELPER# debian/postgres-xc.dirs0000664000000000000000000000014112204651462012327 0ustar /etc/postgres-xc/gtm /etc/postgres-xc/coordinator /etc/postgres-xc/datanode /var/log/postgres-xc debian/postgres-xc.default0000664000000000000000000000007512204651462013020 0ustar # Fast or smart shutdown mode. See pg_ctl(1) FAST_STOP=true debian/postgres-xc-contrib.lintian-overrides0000664000000000000000000000007412204651462016467 0ustar postgres-xc-contrib: possible-gpl-code-linked-with-openssl debian/changelog0000664000000000000000000000570212320563071011045 0ustar postgres-xc (1.1-2ubuntu2) trusty; urgency=low * Backport upstream patch to resolve FTBFS with new bison. -- Daniel T Chen Mon, 07 Apr 2014 13:39:08 -0400 postgres-xc (1.1-2ubuntu1) trusty; urgency=medium * Use autotools-dev to update config.{sub,guess} for new arches. -- Logan Rosen Sun, 22 Dec 2013 03:35:27 -0500 postgres-xc (1.1-2) unstable; urgency=low * Patch build system to work on s390x (Closes: #725636) -- Michael Meskes Fri, 22 Nov 2013 16:19:11 +0100 postgres-xc (1.1-1) unstable; urgency=low * Imported Upstream version 1.1 (Closes: #721777) * List team as maintainer. * Adjusted patches for new upstream version. -- Michael Meskes Tue, 10 Sep 2013 14:15:21 +0200 postgres-xc (1.0.3-1) unstable; urgency=low * Imported Upstream version 1.0.3 * Added some packaging changes from the postgresql-9.2 package. -- Michael Meskes Thu, 25 Apr 2013 13:29:28 +0200 postgres-xc (1.0.2-1) unstable; urgency=low * Updated watch file. Thanks to Bart Martens * Imported Upstream version 1.0.2 * Bumped Standards-Version to 3.9.4, no changes needed. -- Michael Meskes Thu, 07 Feb 2013 13:10:05 +0100 postgres-xc (1.0.1-1) unstable; urgency=low [ Vladimir Stavrinov ] * New upstream release. * Syntax fix in doc-xc/src/sgml/queries.sgmlin * If no servers are running, report them all. * Init script: replace *&&* with *if then* construct to satisfy lintian false error init.d-script-sourcing-without-test. [ Michael Meskes ] * Added patch to work around stdout not being redirected when starting gtm. -- Michael Meskes Thu, 10 Jan 2013 13:10:48 +0100 postgres-xc (1.0.0-3) unstable; urgency=low * Cannot install server-dev packages for postgres-xc and postgresql at the same time. (Closes: #680445) * On purge remove all files and directories. (Closes: #680286) -- Michael Meskes Mon, 09 Jul 2012 11:08:38 +0200 postgres-xc (1.0.0-2) unstable; urgency=low [ Vladimir Stavrinov ] * Fix permissions for logrotate. Set PGDATABASE variable to postgres. * Minor bug fix: remove slashes before quotes. [ Michael Meskes ] * Removed redundant sudo call in postinst. * Added lintian override to not complain about seemingly missing ecpg man page. The manpage is in libecpg-dev which ecpg-xc depends on. * Do not bail out if server cannot be started in postinst. Admin may have disabled it for a reason. (Closes: #679714) * Fixed typo that made client package conflict with non-existant package. (Closes: #679858, #679859) * Added missing conflict for contrib package. (Closes: #679860) -- Michael Meskes Mon, 02 Jul 2012 11:20:49 +0200 postgres-xc (1.0.0-1) unstable; urgency=low * Initial release (Closes: #646563) -- Michael Meskes Tue, 19 Jun 2012 12:57:16 +0200 debian/postgres-xc-doc.doc-base0000664000000000000000000000062412204651462013614 0ustar Document: postgres-xc Title: Postgres-XC Documentation Author: The PostgreSQL Global Development Group Abstract: The documentation for the Postgres-XC database management system, version 1.0. Postgres-XC is a multi-master cluster solution based on PostgreSQL. Section: Data Management Format: HTML Index: /usr/share/doc/postgres-xc-doc/html/index.html Files: /usr/share/doc/postgres-xc-doc/html/*.html debian/postgres-xc-doc.manpages0000664000000000000000000000004012204651462013722 0ustar debian/tmp/usr/share/man/man3/* debian/postgres-xc-plperl.install0000664000000000000000000000015012204651462014330 0ustar usr/lib/postgres-xc/plperl.so usr/share/postgres-xc/extension/plperl* /usr/share/locale/*/*/plperl-*.mo debian/postgres-xc.postinst0000664000000000000000000001116612204651462013262 0ustar #!/bin/sh set -e SSL_ROOT=/etc/postgres-xc/root.crt PGXC_DATA_ROOT=/var/lib/postgres-xc PGXC_GTM_ROOT=/etc/postgres-xc/gtm PGXC_COORDINATOR_ROOT=/etc/postgres-xc/coordinator PGXC_DATANODE_ROOT=/etc/postgres-xc/datanode move_and_link() { mv $PGXC_DATA_ROOT/$2/$3 $1/$2 ln -s $1/$2/$3 $PGXC_DATA_ROOT/$2 } move_postgresql_conf() { if [ $1 = 'coordinator' ]; then dir=$PGXC_COORDINATOR_ROOT port_argument="#" else dir=$PGXC_DATANODE_ROOT port_argument="s/#port = 5432/port = $1/" fi sed -e "$port_argument" \ -e "s%#data_directory = 'ConfigDir'%data_directory = '$PGXC_DATA_ROOT/$2'%" \ -e "s%#hba_file = 'ConfigDir/pg_hba.conf'%hba_file = '$dir/$2/pg_hba.conf'%" \ -e "s%#ident_file = 'ConfigDir/pg_ident.conf'%ident_file = '$dir/$2/pg_ident.conf'%" \ -e "s%#external_pid_file = '(none)'%external_pid_file = '/var/run/postgresql/$2.pid'%" \ < $PGXC_DATA_ROOT/$2/postgresql.conf > $dir/$2/postgresql.conf rm -f $PGXC_DATA_ROOT/$2/postgresql.conf ln -s $dir/$2/postgresql.conf $PGXC_DATA_ROOT/$2 } if [ "$1" = configure ]; then # Make sure the administrative user exists if ! getent passwd postgres-xc > /dev/null; then adduser --system --quiet --home $PGXC_DATA_ROOT --no-create-home \ --shell /bin/bash --group --gecos "Postgres-XC administrator" postgres-xc fi # check validity of postgres user and group if [ "`id -u postgres-xc`" -eq 0 ]; then echo "The postgres system user must not have uid 0 (root). Please fix this and reinstall this package." >&2 exit 1 fi if [ "`id -g postgres-xc`" -eq 0 ]; then echo "The postgres-xc system user must not have root as primary group. Please fix this and reinstall this package." >&2 exit 1 fi # ensure home directory ownership mkdir -p $PGXC_DATA_ROOT chown postgres-xc:postgres-xc $PGXC_DATA_ROOT # nicer log directory permissions mkdir -p /var/log/postgres-xc chmod 1775 /var/log/postgres-xc chown root:postgres-xc /var/log/postgres-xc # create default dummy root.crt if not present if ! [ -e "$SSL_ROOT" ]; then cat > "$SSL_ROOT" </dev/null; then adduser --quiet postgres-xc ssl-cert fi # if no database cluster exists yet, so we create one cd $PGXC_DATA_ROOT if [ ! -d GTM ]; then # Initialize GTM su - postgres-xc -c "initgtm -Z gtm -D GTM" mkdir $PGXC_GTM_ROOT/GTM move_and_link $PGXC_GTM_ROOT GTM gtm.conf touch $PGXC_GTM_ROOT/GTM/run # Initialize Coordinator su - postgres-xc -c "initdb -D CN --nodename cn" mkdir $PGXC_COORDINATOR_ROOT/CN move_postgresql_conf coordinator CN move_and_link $PGXC_COORDINATOR_ROOT CN pg_hba.conf move_and_link $PGXC_COORDINATOR_ROOT CN pg_ident.conf touch $PGXC_COORDINATOR_ROOT/CN/run # Initialize Datanodes mkdir $PGXC_DATANODE_ROOT/DN1 su - postgres-xc -c "initdb -D DN1 --nodename dn1" move_postgresql_conf 15432 DN1 move_and_link $PGXC_DATANODE_ROOT DN1 pg_hba.conf move_and_link $PGXC_DATANODE_ROOT DN1 pg_ident.conf touch $PGXC_DATANODE_ROOT/DN1/run mkdir $PGXC_DATANODE_ROOT/DN2 su - postgres-xc -c "initdb -D DN2 --nodename dn2" move_postgresql_conf 15433 DN2 move_and_link $PGXC_DATANODE_ROOT DN2 pg_hba.conf move_and_link $PGXC_DATANODE_ROOT DN2 pg_ident.conf touch $PGXC_DATANODE_ROOT/DN2/run fi fi fi #DEBHELPER# if [ "$1" = configure -a -z "$2" ]; then # wait until server is up and running i=1 while [ ! -S /var/run/postgresql/.s.PGSQL.5432 ]; do i=$((i+1)) sleep 1 [ $i -gt 10 ] && echo " Server cannot be started! Please run CREATE NODE command manually after starting it! " && exit 0 done # finish cluster installation for fresh install su - postgres-xc -c ' psql postgres -c " CREATE NODE dn1 WITH (TYPE='datanode', PORT=15432); CREATE NODE dn2 WITH (TYPE='datanode', PORT=15433); select pgxc_pool_reload(); " ' fi # Environment su - postgres-xc <<-EOF if [ -z "\$PGDATABASE" ]; then echo 'export PGDATABASE=postgres' >> .profile else : fi EOF debian/ecpg-xc.lintian-overrides0000664000000000000000000000005612204651462014101 0ustar ecpg-xc: binary-without-manpage usr/bin/ecpg debian/docs0000664000000000000000000000002212204651462010037 0ustar README README.git debian/postgres-xc.manpages0000664000000000000000000000052212204651462013164 0ustar debian/tmp/usr/share/man/man1/initdb.1 debian/tmp/usr/share/man/man1/*gtm* debian/tmp/usr/share/man/man1/pg_basebackup.1 debian/tmp/usr/share/man/man1/pg_controldata.1 debian/tmp/usr/share/man/man1/pg_ctl.1 debian/tmp/usr/share/man/man1/pg_resetxlog.1 debian/tmp/usr/share/man/man1/postgres.1 debian/tmp/usr/share/man/man1/postmaster.1 debian/postgres-xc-pltcl.install0000664000000000000000000000023112204651462014150 0ustar usr/lib/postgres-xc/pltcl.so usr/bin/pltcl_* usr/share/postgres-xc/extension/pltcl* usr/share/postgres-xc/unknown.pltcl /usr/share/locale/*/*/pltcl-*.mo debian/patches/0000775000000000000000000000000012320563036010617 5ustar debian/patches/51-default-sockets-in-var.patch0000664000000000000000000000204312204651462016353 0ustar Author: Martin Pitt Description: Put server Unix sockets into /var/run/postgresql/ by default Forwarded: No, Debian specific configuration with postgresql-common Using /tmp for sockets allows everyone to spoof a PostgreSQL server. Thus use /var/run/postgresql/ for "system" clusters which run as 'postgres' (user clusters will still use /tmp). Since system cluster are by far the common case, set it as default. Index: postgresql-9.1-9.1~beta1/src/include/pg_config_manual.h =================================================================== --- postgresql-9.1-9.1~beta1.orig/src/include/pg_config_manual.h 2011-04-27 23:17:22.000000000 +0200 +++ postgresql-9.1-9.1~beta1/src/include/pg_config_manual.h 2011-05-10 11:24:47.331949788 +0200 @@ -141,7 +141,7 @@ * here's where to twiddle it. You can also override this at runtime * with the postmaster's -k switch. */ -#define DEFAULT_PGSOCKET_DIR "/tmp" +#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql" /* * The random() function is expected to yield values between 0 and debian/patches/S390.patch0000664000000000000000000000065512243672454012315 0ustar --- postgres-xc/src/makefiles/Makefile.linux 2013-08-20 13:29:56.019965103 +0200 +++ postgres-xc/src/makefiles/Makefile.linux 2013-11-22 16:15:05.640735622 +0100 @@ -9,8 +9,12 @@ ifeq "$(findstring sparc,$(host_cpu))" "sparc" CFLAGS_SL = -fPIC else +ifeq "$(findstring s390,$(host_cpu))" "s390" +CFLAGS_SL = -fPIC +else CFLAGS_SL = -fpic endif +endif # Rule for building a shared library from a single .o file %.so: %.o debian/patches/series0000664000000000000000000000016412320562331012032 0ustar 51-default-sockets-in-var.patch 54-debian-alternatives-for-external-tools.patch S390.patch bison-parse-params.patch debian/patches/54-debian-alternatives-for-external-tools.patch0000664000000000000000000000242512204651462021556 0ustar Author: Martin Pitt Description: Use Debian alternatives for external tools instead of hardcoded programs Forwarded: No, Debian specific Index: postgresql-9.1-9.1~rc1/src/bin/psql/print.h =================================================================== --- postgresql-9.1-9.1~rc1.orig/src/bin/psql/print.h 2011-08-18 23:23:13.000000000 +0200 +++ postgresql-9.1-9.1~rc1/src/bin/psql/print.h 2011-08-21 10:07:15.654681131 +0200 @@ -172,7 +172,7 @@ extern const printTextFormat *get_line_style(const printTableOpt *opt); #ifndef __CYGWIN__ -#define DEFAULT_PAGER "more" +#define DEFAULT_PAGER "/usr/bin/pager" #else #define DEFAULT_PAGER "less" #endif Index: postgresql-9.1-9.1~rc1/src/bin/psql/settings.h =================================================================== --- postgresql-9.1-9.1~rc1.orig/src/bin/psql/settings.h 2011-08-18 23:23:13.000000000 +0200 +++ postgresql-9.1-9.1~rc1/src/bin/psql/settings.h 2011-08-21 10:07:55.264681395 +0200 @@ -20,8 +20,8 @@ #define DEFAULT_EDITOR "notepad.exe" /* no DEFAULT_EDITOR_LINENUMBER_ARG for Notepad */ #else -#define DEFAULT_EDITOR "vi" -#define DEFAULT_EDITOR_LINENUMBER_ARG "+" +#define DEFAULT_EDITOR "sensible-editor" +/*#define DEFAULT_EDITOR_LINENUMBER_ARG "+"*/ #endif #define DEFAULT_PROMPT1 "%/%R%# " debian/patches/bison-parse-params.patch0000664000000000000000000001765012320563036015354 0ustar Index: postgres-xc-1.1/contrib/cube/cube.c =================================================================== --- postgres-xc-1.1.orig/contrib/cube/cube.c 2013-08-12 22:12:20.000000000 -0400 +++ postgres-xc-1.1/contrib/cube/cube.c 2014-04-07 13:53:29.557619582 -0400 @@ -26,8 +26,8 @@ #define ARRPTR(x) ( (double *) ARR_DATA_PTR(x) ) #define ARRNELEMS(x) ArrayGetNItems( ARR_NDIM(x), ARR_DIMS(x)) -extern int cube_yyparse(); -extern void cube_yyerror(const char *message); +extern int cube_yyparse(NDBOX **result); +extern void cube_yyerror(NDBOX **result, const char *message); extern void cube_scanner_init(const char *str); extern void cube_scanner_finish(void); @@ -158,12 +158,12 @@ cube_in(PG_FUNCTION_ARGS) { char *str = PG_GETARG_CSTRING(0); - void *result; + NDBOX *result; cube_scanner_init(str); if (cube_yyparse(&result) != 0) - cube_yyerror("bogus input"); + cube_yyerror(&result, "bogus input"); cube_scanner_finish(); Index: postgres-xc-1.1/contrib/cube/cubeparse.y =================================================================== --- postgres-xc-1.1.orig/contrib/cube/cubeparse.y 2013-08-12 22:12:20.000000000 -0400 +++ postgres-xc-1.1/contrib/cube/cubeparse.y 2014-04-07 13:53:29.557619582 -0400 @@ -1,10 +1,9 @@ %{ +/* contrib/cube/cubeparse.y */ + /* NdBox = [(lowerleft),(upperright)] */ /* [(xLL(1)...xLL(N)),(xUR(1)...xUR(n))] */ -/* contrib/cube/cubeparse.y */ - -#define YYPARSE_PARAM result /* need this to pass a pointer (void *) to yyparse */ #define YYSTYPE char * #define YYDEBUG 1 @@ -28,8 +27,8 @@ static char *scanbuf; static int scanbuflen; -void cube_yyerror(const char *message); -int cube_yyparse(void *result); +extern int cube_yyparse(NDBOX **result); +extern void cube_yyerror(NDBOX **result, const char *message); static int delim_count(char *s, char delim); static NDBOX * write_box(unsigned int dim, char *str1, char *str2); @@ -38,6 +37,7 @@ %} /* BISON Declarations */ +%parse-param {NDBOX **result} %expect 0 %name-prefix="cube_yy" @@ -70,7 +70,7 @@ YYABORT; } - *((void **)result) = write_box( dim, $2, $4 ); + *result = write_box( dim, $2, $4 ); } @@ -97,7 +97,7 @@ YYABORT; } - *((void **)result) = write_box( dim, $1, $3 ); + *result = write_box( dim, $1, $3 ); } | paren_list @@ -114,7 +114,7 @@ YYABORT; } - *((void **)result) = write_point_as_box($1, dim); + *result = write_point_as_box($1, dim); } | list @@ -130,7 +130,7 @@ CUBE_MAX_DIM))); YYABORT; } - *((void **)result) = write_point_as_box($1, dim); + *result = write_point_as_box($1, dim); } ; Index: postgres-xc-1.1/contrib/cube/cubescan.l =================================================================== --- postgres-xc-1.1.orig/contrib/cube/cubescan.l 2013-08-12 22:12:20.000000000 -0400 +++ postgres-xc-1.1/contrib/cube/cubescan.l 2014-04-07 13:53:29.557619582 -0400 @@ -55,7 +55,7 @@ %% void -yyerror(const char *message) +yyerror(NDBOX **result, const char *message) { if (*yytext == YY_END_OF_BUFFER_CHAR) { Index: postgres-xc-1.1/contrib/seg/seg.c =================================================================== --- postgres-xc-1.1.orig/contrib/seg/seg.c 2013-08-12 22:12:20.000000000 -0400 +++ postgres-xc-1.1/contrib/seg/seg.c 2014-04-07 13:53:29.557619582 -0400 @@ -23,8 +23,8 @@ PG_MODULE_MAGIC; -extern int seg_yyparse(); -extern void seg_yyerror(const char *message); +extern int seg_yyparse(SEG *result); +extern void seg_yyerror(SEG *result, const char *message); extern void seg_scanner_init(const char *str); extern void seg_scanner_finish(void); @@ -126,7 +126,7 @@ seg_scanner_init(str); if (seg_yyparse(result) != 0) - seg_yyerror("bogus input"); + seg_yyerror(result, "bogus input"); seg_scanner_finish(); Index: postgres-xc-1.1/contrib/seg/segparse.y =================================================================== --- postgres-xc-1.1.orig/contrib/seg/segparse.y 2013-08-12 22:12:20.000000000 -0400 +++ postgres-xc-1.1/contrib/seg/segparse.y 2014-04-07 13:53:29.557619582 -0400 @@ -1,5 +1,5 @@ %{ -#define YYPARSE_PARAM result /* need this to pass a pointer (void *) to yyparse */ +/* contrib/seg/segparse.y */ #include "postgres.h" @@ -24,8 +24,8 @@ extern int significant_digits(char *str); /* defined in seg.c */ -void seg_yyerror(const char *message); -int seg_yyparse(void *result); +extern int seg_yyparse(SEG *result); +extern void seg_yyerror(SEG *result, const char *message); static float seg_atof(char *value); @@ -40,6 +40,7 @@ %} /* BISON Declarations */ +%parse-param {SEG *result} %expect 0 %name-prefix="seg_yy" @@ -65,59 +66,59 @@ range: boundary PLUMIN deviation { - ((SEG *)result)->lower = $1.val - $3.val; - ((SEG *)result)->upper = $1.val + $3.val; - sprintf(strbuf, "%g", ((SEG *)result)->lower); - ((SEG *)result)->l_sigd = Max(Min(6, significant_digits(strbuf)), Max($1.sigd, $3.sigd)); - sprintf(strbuf, "%g", ((SEG *)result)->upper); - ((SEG *)result)->u_sigd = Max(Min(6, significant_digits(strbuf)), Max($1.sigd, $3.sigd)); - ((SEG *)result)->l_ext = '\0'; - ((SEG *)result)->u_ext = '\0'; + result->lower = $1.val - $3.val; + result->upper = $1.val + $3.val; + sprintf(strbuf, "%g", result->lower); + result->l_sigd = Max(Min(6, significant_digits(strbuf)), Max($1.sigd, $3.sigd)); + sprintf(strbuf, "%g", result->upper); + result->u_sigd = Max(Min(6, significant_digits(strbuf)), Max($1.sigd, $3.sigd)); + result->l_ext = '\0'; + result->u_ext = '\0'; } | boundary RANGE boundary { - ((SEG *)result)->lower = $1.val; - ((SEG *)result)->upper = $3.val; - if ( ((SEG *)result)->lower > ((SEG *)result)->upper ) { + result->lower = $1.val; + result->upper = $3.val; + if ( result->lower > result->upper ) { ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("swapped boundaries: %g is greater than %g", - ((SEG *)result)->lower, ((SEG *)result)->upper))); + result->lower, result->upper))); YYERROR; } - ((SEG *)result)->l_sigd = $1.sigd; - ((SEG *)result)->u_sigd = $3.sigd; - ((SEG *)result)->l_ext = ( $1.ext ? $1.ext : '\0' ); - ((SEG *)result)->u_ext = ( $3.ext ? $3.ext : '\0' ); + result->l_sigd = $1.sigd; + result->u_sigd = $3.sigd; + result->l_ext = ( $1.ext ? $1.ext : '\0' ); + result->u_ext = ( $3.ext ? $3.ext : '\0' ); } | boundary RANGE { - ((SEG *)result)->lower = $1.val; - ((SEG *)result)->upper = HUGE_VAL; - ((SEG *)result)->l_sigd = $1.sigd; - ((SEG *)result)->u_sigd = 0; - ((SEG *)result)->l_ext = ( $1.ext ? $1.ext : '\0' ); - ((SEG *)result)->u_ext = '-'; + result->lower = $1.val; + result->upper = HUGE_VAL; + result->l_sigd = $1.sigd; + result->u_sigd = 0; + result->l_ext = ( $1.ext ? $1.ext : '\0' ); + result->u_ext = '-'; } | RANGE boundary { - ((SEG *)result)->lower = -HUGE_VAL; - ((SEG *)result)->upper = $2.val; - ((SEG *)result)->l_sigd = 0; - ((SEG *)result)->u_sigd = $2.sigd; - ((SEG *)result)->l_ext = '-'; - ((SEG *)result)->u_ext = ( $2.ext ? $2.ext : '\0' ); + result->lower = -HUGE_VAL; + result->upper = $2.val; + result->l_sigd = 0; + result->u_sigd = $2.sigd; + result->l_ext = '-'; + result->u_ext = ( $2.ext ? $2.ext : '\0' ); } | boundary { - ((SEG *)result)->lower = ((SEG *)result)->upper = $1.val; - ((SEG *)result)->l_sigd = ((SEG *)result)->u_sigd = $1.sigd; - ((SEG *)result)->l_ext = ((SEG *)result)->u_ext = ( $1.ext ? $1.ext : '\0' ); + result->lower = result->upper = $1.val; + result->l_sigd = result->u_sigd = $1.sigd; + result->l_ext = result->u_ext = ( $1.ext ? $1.ext : '\0' ); } ; Index: postgres-xc-1.1/contrib/seg/segscan.l =================================================================== --- postgres-xc-1.1.orig/contrib/seg/segscan.l 2013-08-12 22:12:20.000000000 -0400 +++ postgres-xc-1.1/contrib/seg/segscan.l 2014-04-07 13:53:29.557619582 -0400 @@ -54,7 +54,7 @@ %% void -yyerror(const char *message) +yyerror(SEG *result, const char *message) { if (*yytext == YY_END_OF_BUFFER_CHAR) { debian/ecpg-xc.install0000664000000000000000000000001512204651462012104 0ustar usr/bin/ecpg debian/postgres-xc-plpython.install0000664000000000000000000000023412204651462014712 0ustar usr/lib/postgres-xc/plpython2.so usr/share/postgres-xc/extension/plpythonu* usr/share/postgres-xc/extension/plpython2u* usr/share/locale/*/*/plpython-*.mo debian/ecpg-xc.postrm0000664000000000000000000000027312204651462011770 0ustar #!/bin/sh set -e case "$1" in remove|abort-install|disappear) dpkg-divert --package ecpg-xc --remove --rename --divert /usr/bin/ecpg.postgresql /usr/bin/ecpg ;; esac #DEBHELPER# debian/watch0000664000000000000000000000031712213601747010225 0ustar version=3 opts=uversionmangle=s/\.(beta\d*)$/~$1/ \ http://qa.debian.org/watch/sf.php/postgres-xc/ \ (?:|.*/)pgxc[_\-]v?(\d\S*)\.(?:tar\.xz|txz|tar\.bz2|tbz2|tar\.gz|tgz) # Bart Martens debian/postgres-xc.install0000664000000000000000000000222412204651462013040 0ustar usr/bin/initdb usr/bin/pg_controldata usr/bin/pg_ctl usr/bin/pg_resetxlog usr/bin/postgres usr/bin/postmaster usr/bin/gtm usr/bin/gtm_ctl usr/bin/gtm_proxy usr/bin/initgtm usr/bin/pg_basebackup usr/bin/pg_upgrade usr/bin/pg_test_fsync usr/bin/pgxc_clean usr/lib/postgres-xc/tsearch2.so usr/lib/postgres-xc/*_and_*.so usr/lib/postgres-xc/euc2004_sjis2004.so usr/lib/postgres-xc/libpqwalreceiver.so usr/lib/postgres-xc/plpgsql.so usr/lib/postgres-xc/dict_snowball.so usr/lib/postgres-xc/pg_upgrade_support.so usr/share/postgres-xc/extension/plpgsql* usr/share/postgres-xc/timezonesets/* usr/share/postgres-xc/tsearch_data usr/share/postgres-xc/*.sql usr/share/postgres-xc/*.conf.sample usr/share/postgres-xc/postgres.bki usr/share/postgres-xc/postgres.description usr/share/postgres-xc/postgres.shdescription usr/share/postgres-xc/sql_features.txt usr/share/locale/*/LC_MESSAGES/initdb-*.mo usr/share/locale/*/LC_MESSAGES/pg_basebackup-*.mo usr/share/locale/*/LC_MESSAGES/pg_controldata-*.mo usr/share/locale/*/LC_MESSAGES/pg_ctl-*.mo usr/share/locale/*/LC_MESSAGES/pg_resetxlog-*.mo usr/share/locale/*/LC_MESSAGES/postgres-*.mo usr/share/locale/*/LC_MESSAGES/plpgsql-*.mo debian/pg_regress-in-tmp.patch0000664000000000000000000000436612204651462013566 0ustar As a consequence of 51-default-sockets-in-var.patch we now need to explicitly specify the pg_regress socket dir as /tmp, since it runs the server as the invoking user. Index: postgresql-9.1-9.1~beta1/src/test/regress/pg_regress.c =================================================================== --- postgresql-9.1-9.1~beta1.orig/src/test/regress/pg_regress.c 2011-04-27 23:17:22.000000000 +0200 +++ postgresql-9.1-9.1~beta1/src/test/regress/pg_regress.c 2011-05-10 11:24:47.331949788 +0200 @@ -1618,7 +1618,7 @@ /* And now we can build and execute the shell command */ snprintf(psql_cmd, sizeof(psql_cmd), - SYSTEMQUOTE "\"%s%spsql\" -X -c \"%s\" \"%s\"" SYSTEMQUOTE, + SYSTEMQUOTE "\"%s%spsql\" -h /tmp -X -c \"%s\" \"%s\"" SYSTEMQUOTE, psqldir ? psqldir : "", psqldir ? "/" : "", query_escaped, @@ -2960,7 +2960,7 @@ * Check if there is a postmaster running already. */ snprintf(buf2, sizeof(buf2), - SYSTEMQUOTE "\"%s/psql\" -X postgres <%s 2>%s" SYSTEMQUOTE, + SYSTEMQUOTE "\"%s/psql\" -h /tmp -X postgres <%s 2>%s" SYSTEMQUOTE, bindir, DEVNULL, DEVNULL); for (i = 0; i < 16; i++) @@ -3003,7 +3003,7 @@ */ header(_("starting postmaster")); snprintf(buf, sizeof(buf), - SYSTEMQUOTE "\"%s/postgres\" -D \"%s/data\" -F%s -c \"listen_addresses=%s\" > \"%s/log/postmaster.log\" 2>&1" SYSTEMQUOTE, + SYSTEMQUOTE "\"%s/postgres\" -D \"%s/data\" -k /tmp -F%s -c \"listen_addresses=%s\" > \"%s/log/postmaster.log\" 2>&1" SYSTEMQUOTE, bindir, temp_install, debug ? " -d 5" : "", hostname ? hostname : "", Index: postgresql-9.1-9.1~beta1/src/test/regress/pg_regress_main.c =================================================================== --- postgresql-9.1-9.1~beta1.orig/src/test/regress/pg_regress_main.c 2011-04-27 23:17:22.000000000 +0200 +++ postgresql-9.1-9.1~beta1/src/test/regress/pg_regress_main.c 2011-05-10 11:25:19.291949792 +0200 @@ -64,7 +64,7 @@ "%s ", launcher); snprintf(psql_cmd + offset, sizeof(psql_cmd) - offset, - SYSTEMQUOTE "\"%s%spsql\" -X -a -q -d \"%s\" < \"%s\" > \"%s\" 2>&1" SYSTEMQUOTE, + SYSTEMQUOTE "\"%s%spsql\" -h /tmp -X -a -q -d \"%s\" < \"%s\" > \"%s\" 2>&1" SYSTEMQUOTE, psqldir ? psqldir : "", psqldir ? "/" : "", dblist->str, debian/disable-root-check.patch0000664000000000000000000000455412204651462013662 0ustar diff -ur postgresql-9.1-9.1~beta1/src/backend/main/main.c postgresql-9.1-9.1~beta1.new/src/backend/main/main.c --- postgresql-9.1-9.1~beta1/src/backend/main/main.c 2010-01-02 17:57:45.000000000 +0100 +++ postgresql-9.1-9.1~beta1.new/src/backend/main/main.c 2010-05-01 14:41:42.997229019 +0200 @@ -344,7 +344,7 @@ check_root(const char *progname) { #ifndef WIN32 - if (geteuid() == 0) + if (0 && geteuid() == 0) { write_stderr("\"root\" execution of the PostgreSQL server is not permitted.\n" "The server must be started under an unprivileged user ID to prevent\n" diff -ur postgresql-9.1-9.1~beta1/src/bin/initdb/initdb.c postgresql-9.1-9.1~beta1.new/src/bin/initdb/initdb.c --- postgresql-9.1-9.1~beta1/src/bin/initdb/initdb.c 2010-02-26 03:01:15.000000000 +0100 +++ postgresql-9.1-9.1~beta1.new/src/bin/initdb/initdb.c 2010-05-01 14:41:42.997229019 +0200 @@ -557,7 +557,7 @@ struct passwd *pw; - if (geteuid() == 0) /* 0 is root's uid */ + if (0 && geteuid() == 0) /* 0 is root's uid */ { fprintf(stderr, _("%s: cannot be run as root\n" diff -ur postgresql-9.1-9.1~beta1/src/bin/pg_ctl/pg_ctl.c postgresql-9.1-9.1~beta1.new/src/bin/pg_ctl/pg_ctl.c --- postgresql-9.1-9.1~beta1/src/bin/pg_ctl/pg_ctl.c 2010-04-07 05:48:51.000000000 +0200 +++ postgresql-9.1-9.1~beta1.new/src/bin/pg_ctl/pg_ctl.c 2010-05-01 14:41:42.997229019 +0200 @@ -1970,7 +1970,7 @@ * Disallow running as root, to forestall any possible security holes. */ #ifndef WIN32 - if (geteuid() == 0) + if (0 && geteuid() == 0) { write_stderr(_("%s: cannot be run as root\n" "Please log in (using, e.g., \"su\") as the " --- postgres-xc/src/bin/gtm_ctl/gtm_ctl.c 2012-06-07 21:42:34.302638426 +0200 +++ postgres-xc/src/bin/gtm_ctl/gtm_ctl.c 2012-06-07 21:55:17.370631840 +0200 @@ -962,7 +962,7 @@ /* * Disallow running as root, to forestall any possible security holes. */ - if (geteuid() == 0) + if (0 && geteuid() == 0) { write_stderr(_("%s: cannot be run as root\n" "Please log in (using, e.g., \"su\") as the " --- postgres-xc/src/bin/initgtm/initgtm.c 2012-06-07 21:42:34.202638427 +0200 +++ postgres-xc/src/bin/initgtm/initgtm.c 2012-06-07 21:54:45.358632117 +0200 @@ -371,7 +371,7 @@ struct passwd *pw; - if (geteuid() == 0) /* 0 is root's uid */ + if (0 && geteuid() == 0) /* 0 is root's uid */ { fprintf(stderr, _("%s: cannot be run as root\n" debian/postgres-xc-client.lintian-overrides0000664000000000000000000000007312204651462016304 0ustar postgres-xc-client: possible-gpl-code-linked-with-openssl debian/postgres-xc-server-dev.install0000664000000000000000000000011412204651462015114 0ustar usr/include/postgres-xc/server usr/lib/postgres-xc/pgxs/* usr/bin/pg_config debian/control0000664000000000000000000002422712255522141010601 0ustar Source: postgres-xc Section: database Priority: optional Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Debian PostgreSQL Maintainers Uploaders: Michael Meskes Build-Depends: debhelper (>= 8.0.0), dpkg-dev (>= 1.16.1~) | hardening-wrapper, perl (>= 5.8), libperl-dev, libpq-dev, tcl8.5-dev, libedit-dev, libssl-dev, zlib1g-dev | libz-dev, libpam0g-dev | libpam-dev, libxml2-dev, libkrb5-dev, libldap2-dev, libxslt1-dev, libossp-uuid-dev, python-dev, bison, flex, openjade, docbook-dsssl, docbook-xsl, opensp, xsltproc, gettext, autotools-dev Standards-Version: 3.9.4 Homepage: http://postgres-xc.sourceforge.net/ Vcs-Git: git://anonscm.debian.org/pkg-postgresql/postgres-xc.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-postgresql/postgres-xc.git Package: postgres-xc Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, postgres-xc-client, adduser, ssl-cert (>= 1.0.11), logrotate Conflicts: postgresql-common Description: write-scalable, synchronous multi-master, transparent PostgreSQL cluster Write-scalable means Postgres-XC can be configured with as many database servers as you want and handle many more writes (updating SQL statements) compared to what a single database server can not do. . Multi-master means you can have more than one database server that clients connect to which provide a single, consistent cluster-wide view of the database. . Synchronous means any database update from any database server is immediately visible to any other transactions running on different masters. . Transparent means you (and your applications) do not have to worry about how your data is stored in more than one database servers internally. . You can configure Postgres-XC to run on multiple servers. Your data is stored in a distributed way, that is, partitioned or replicated, as chosen by you for each table. When you issue queries, Postgres-XC determines where the target data is stored and issues corresponding queries to servers containing the target data. Package: postgres-xc-dbg Section: debug Priority: extra Architecture: any Depends: ${misc:Depends}, postgres-xc (= ${binary:Version}) Description: debug symbols for postgres-xc Write-scalable means Postgres-XC can be configured with as many database servers as you want and handle many more writes (updating SQL statements) compared to what a single database server can not do. . Multi-master means you can have more than one database server that clients connect to which provide a single, consistent cluster-wide view of the database. . Synchronous means any database update from any database server is immediately visible to any other transactions running on different masters. . Transparent means you (and your applications) do not have to worry about how your data is stored in more than one database servers internally. . You can configure Postgres-XC to run on multiple servers. Your data is stored in a distributed way, that is, partitioned or replicated, as chosen by you for each table. When you issue queries, Postgres-XC determines where the target data is stored and issues corresponding queries to servers containing the target data. . This package provides detached debugging symbols for Postgres-XC. Package: postgres-xc-doc Section: doc Priority: extra Architecture: all Depends: ${misc:Depends} Description: documentation for the Postgres-XC cluster This package contains all README files, user manual, and examples for Postgres-XC. The manual is in HTML format. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: postgres-xc-client Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} Suggests: postgres-xc, postgresql-xc-doc Conflicts: postgresql-client-common Description: front-end programs for Postgres-XC This package contains client and administrative programs for Postgres-XC: these are the interactive terminal client psql and programs for creating and removing users and databases. . This is the client package for Postgres-XC. If you install Postgres-XC on a standalone machine, you need the server package postgres-xc, too. On a network, you can install this package on many client machines, while the server package may be installed on only one machine. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: postgres-xc-server-dev Architecture: any Section: libdevel Depends: ${misc:Depends}, ${shlibs:Depends}, libpq-dev (>= 9.2~) Conflicts: postgresql-common Description: development files for Postgres-XC server-side programming Header files for compiling SSI code to link into Postgres-XC's backend; for example, for C functions to be called from SQL. . This package also contains the Makefiles necessary for building add-on modules of Postgres-XC, which would otherwise have to be built in the Postgres-XC source-code tree. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: postgres-xc-plperl Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends}, postgres-xc (= ${binary:Version}), perl Description: PL/Perl procedural language for Postgres-XC PL/Perl enables an SQL developer to write procedural language functions for Postgres-XC in Perl. You need this package if you have any Postgres-XC functions that use the languages plperl or plperlu. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: postgres-xc-plpython Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends}, postgres-xc (= ${binary:Version}) Description: PL/Python procedural language for Postgres-XC PL/Python enables an SQL developer to write procedural language functions for Postgres-XC in Python. You need this package if you have any Postgres-XC functions that use the languages plpython or plpythonu. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: postgres-xc-pltcl Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends}, postgres-xc (= ${binary:Version}) Description: PL/Tcl procedural language for Postgres-XC PL/Tcl enables an SQL developer to write procedural language functions for Postgres-XC in Tcl. You need this package if you have any Postgres-XC functions that use the languages pltcl or pltclu. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: postgres-xc-contrib Architecture: any Depends: postgres-xc (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends} Suggests: libdbd-pg-perl Conflicts: postgresql-client-common Description: additional facilities for Postgres-XC The Postgres-XC contrib package provides several additional features for the Postgres-XC database. contrib often serves as a testbed for features before they are adopted into PostgreSQL proper: . adminpack - File and log manipulation routines, used by pgAdmin btree_gist - B-Tree indexing using GiST (Generalised Search Tree) chkpass - An auto-encrypted password datatype cube - Multidimensional-cube datatype (GiST indexing example) dblink - Functions to return results from a remote database earthdistance - Operator for computing the distance (in miles) between two points on the earth's surface fuzzystrmatch - Levenshtein, metaphone, and soundex fuzzy string matching hstore - Store (key, value) pairs intagg - Integer aggregator/enumerator _int - Index support for arrays of int4, using GiST (benchmark needs the libdbd-pg-perl package) isn - type extensions for ISBN, ISSN, ISMN, EAN13 product numbers lo - Large Object maintenance ltree - Tree-like data structures oid2name - Maps OIDs to table names pageinspect - Inspection of database pages passwordcheck - Simple password strength checker pg_buffercache - Real time queries on the shared buffer cache pg_freespacemap- Displays the contents of the free space map (FSM) pg_trgm - Determine the similarity of text based on trigram matching pg_standby - Create a warm stand-by server pgbench - TPC-B like benchmark pgcrypto - Cryptographic functions pgrowlocks - A function to return row locking information pgstattuple - Returns the percentage of dead tuples in a table; this indicates whether a vacuum is required. seg - Confidence-interval datatype (GiST indexing example) spi - PostgreSQL Server Programming Interface; 4 examples of its use: autoinc - A function for implementing AUTOINCREMENT/ IDENTITY insert_username - function for inserting user names moddatetime - Update modification timestamps refint - Functions for implementing referential integrity (foreign keys). Note that this is now superseded by built-in referential integrity. timetravel - Re-implements in user code the time travel feature that was removed in 6.3. tablefunc - examples of functions returning tables uuid-ossp - UUID generation functions vacuumlo - Remove orphaned large objects . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. Package: ecpg-xc Architecture: any Section: libdevel Depends: ${misc:Depends}, ${shlibs:Depends}, libpq-dev, libecpg-dev (>= 9.2~), libecpg6 (>= 9.2~), libecpg-compat3 (>= 9.2~), libpgtypes3 (>= 9.2~) Description: Postgres-XC version of ECPG (Embedded PostgreSQL for C) This package contains the precompiler ECPG (Embedded PostgreSQL for C) for parsing Postgres-XC syntax. . Postgres-XC is a write-scalable, synchronous multi-master, transparent PostgreSQL cluster. . Install this package if you want to write C programs with SQL statements embedded in them (rather than run by an external process). debian/source/0000775000000000000000000000000012204651462010472 5ustar debian/source/format0000664000000000000000000000001412204651462011700 0ustar 3.0 (quilt) debian/ecpg-xc.preinst0000664000000000000000000000045112204651462012126 0ustar #!/bin/sh set -e case "$1" in install|upgrade) dpkg-divert --package ecpg-xc --rename --divert /usr/bin/ecpg.postgresql --add /usr/bin/ecpg ;; abort-upgrade) ;; *) echo "$0 called with unknown argument \`$1'" 1>&2 exit 1 ;; esac #DEBHELPER# debian/compat0000664000000000000000000000000212204651462010370 0ustar 8 debian/postgres-xc-doc.install0000664000000000000000000000004312204651462013600 0ustar usr/share/doc/postgres-xc-doc/html debian/rules0000775000000000000000000000672112255522074010262 0ustar #!/usr/bin/make -f # -*- makefile -*- # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 TCL_VER := 8.5 # support both hardening-wrapper (for backports) and dpkg-buildflags export DEB_BUILD_HARDENING = 1 export DEB_BUILD_MAINT_OPTIONS = hardening=+all,-pie DPKG_EXPORT_BUILDFLAGS = 1 -include /usr/share/dpkg/buildflags.mk LDFLAGS+= -Wl,--as-needed -Wl,-z,now CFLAGS+= -fPIC -pie # When protecting the postmaster with oom_adj=-17, allow the OOM killer to slay # the backends (http://archives.postgresql.org/pgsql-hackers/2010-01/msg00170.php) ifeq ($(shell uname -s),Linux) CFLAGS+= -DLINUX_OOM_ADJ=0 endif ifneq ($(findstring $(DEB_BUILD_ARCH), sparc alpha),) # sparc and alpha's gcc currently miscompiles; see # http://lists.debian.org/debian-alpha/2007/11/msg00025.html CFLAGS+=-O1 endif export DPKG_GENSYMBOLS_CHECK_LEVEL=4 # build should fail on test suite failures on all arches TESTSUITE_FAIL_CMD=exit 1 override_dh_auto_clean: [ ! -f GNUmakefile ] || make distclean -rm -fr build -find doc-xc/src/sgml -name "*.sgml" -exec rm -f {} \; (cd src/test/regress/sql; \ rm -f misc.sql \ rm -f create_function_1.sql \ rm -f create_function_2.sql \ rm -f largeobject.sql \ rm -f copy.sql \ rm -f constraints.sql \ rm -f security_label.sql \ rm -f tablespace.sql \ rm -f xc_copy.sql) override_dh_auto_configure: mkdir -p build cd build && ../configure --prefix=/usr \ --libdir=/usr/lib/postgres-xc \ --docdir=/usr/share/doc/postgres-xc-doc \ --datarootdir=/usr/share \ --datadir=/usr/share/postgres-xc \ --includedir=/usr/include/postgres-xc \ --sysconfdir=/etc \ --localstatedir=/var \ --enable-nls \ --enable-integer-datetimes \ --enable-thread-safety \ --enable-debug \ --disable-maintainer-mode \ --disable-dependency-tracking \ --disable-rpath \ --with-ossp-uuid \ --with-gnu-ld \ --with-pgport=5432 \ --with-system-tzdata=/usr/share/zoneinfo \ --with-tcl \ --with-perl \ --with-python \ --with-pam \ --with-krb5 \ --with-gssapi \ --with-openssl \ --with-libxml \ --with-libxslt \ --with-ldap \ --with-tclconfig=/usr/lib/tcl$(TCL_VER) \ --with-tkconfig=/usr/lib/tk$(TCL_VER) \ --with-includes=/usr/include/tcl$(TCL_VER) override_dh_auto_build: cd build && $(MAKE) override_dh_auto_install: make -C build install-world DESTDIR=$(CURDIR)/debian/tmp override_dh_install: dh_install # these get installed into the individual -/l* packages; -f because it # does not exist for an -A build rm -f debian/postgres-xc-contrib/usr/share/postgres-xc/extension/pl* override_dh_strip: dh_strip --dbg-package=postgres-xc-dbg override_dh_auto_test: ifeq (, $(findstring nocheck, $(DEB_BUILD_OPTIONS))) # patch away the "don't execute as root" check for the test # suite; doing it here will ensure that the actual debs have # the check. set -e; \ patch --no-backup-if-mismatch -p1 < debian/disable-root-check.patch; \ patch --no-backup-if-mismatch -p1 < debian/pg_regress-in-tmp.patch; \ #make -C build/src/test/regress bigcheck || fail=1; \ patch --no-backup-if-mismatch -Rp1 < debian/pg_regress-in-tmp.patch; \ patch --no-backup-if-mismatch -Rp1 < debian/disable-root-check.patch; \ if [ -n "$$fail" ]; then \ for l in regression.diffs log/initdb.log log/postmaster.log; do \ if [ -e build/src/test/regress/$$l ]; then \ echo "********* $$l *******"; \ cat build/src/test/regress/$$l; \ fi; \ done; \ $(TESTSUITE_FAIL_CMD); \ fi endif %: dh $@ --with autotools_dev debian/postgres-xc-client.manpages0000664000000000000000000000107112204651462014440 0ustar debian/tmp/usr/share/man/man1/pg_restore.1 debian/tmp/usr/share/man/man1/psql.1 debian/tmp/usr/share/man/man1/vacuumdb.1 debian/tmp/usr/share/man/man1/clusterdb.1 debian/tmp/usr/share/man/man1/pg_dump.1 debian/tmp/usr/share/man/man1/pg_dumpall.1 debian/tmp/usr/share/man/man1/createdb.1 debian/tmp/usr/share/man/man1/createlang.1 debian/tmp/usr/share/man/man1/createuser.1 debian/tmp/usr/share/man/man1/dropdb.1 debian/tmp/usr/share/man/man1/droplang.1 debian/tmp/usr/share/man/man1/dropuser.1 debian/tmp/usr/share/man/man1/reindexdb.1 debian/tmp/usr/share/man/man7/*