mirror of https://github.com/citusdata/citus.git
Merge f4d5773f73
into 98e0648d40
commit
9dfeae08ec
|
@ -587,6 +587,7 @@ PACKAGE_URL=''
|
||||||
ac_subst_vars='LTLIBOBJS
|
ac_subst_vars='LTLIBOBJS
|
||||||
LIBOBJS
|
LIBOBJS
|
||||||
CITUS_CFLAGS
|
CITUS_CFLAGS
|
||||||
|
vpath_build
|
||||||
OBJEXT
|
OBJEXT
|
||||||
EXEEXT
|
EXEEXT
|
||||||
ac_ct_CC
|
ac_ct_CC
|
||||||
|
@ -594,7 +595,6 @@ CPPFLAGS
|
||||||
LDFLAGS
|
LDFLAGS
|
||||||
CFLAGS
|
CFLAGS
|
||||||
CC
|
CC
|
||||||
vpath_build
|
|
||||||
PATH
|
PATH
|
||||||
PG_CONFIG
|
PG_CONFIG
|
||||||
FLEX
|
FLEX
|
||||||
|
@ -618,6 +618,7 @@ infodir
|
||||||
docdir
|
docdir
|
||||||
oldincludedir
|
oldincludedir
|
||||||
includedir
|
includedir
|
||||||
|
runstatedir
|
||||||
localstatedir
|
localstatedir
|
||||||
sharedstatedir
|
sharedstatedir
|
||||||
sysconfdir
|
sysconfdir
|
||||||
|
@ -689,6 +690,7 @@ datadir='${datarootdir}'
|
||||||
sysconfdir='${prefix}/etc'
|
sysconfdir='${prefix}/etc'
|
||||||
sharedstatedir='${prefix}/com'
|
sharedstatedir='${prefix}/com'
|
||||||
localstatedir='${prefix}/var'
|
localstatedir='${prefix}/var'
|
||||||
|
runstatedir='${localstatedir}/run'
|
||||||
includedir='${prefix}/include'
|
includedir='${prefix}/include'
|
||||||
oldincludedir='/usr/include'
|
oldincludedir='/usr/include'
|
||||||
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
||||||
|
@ -941,6 +943,15 @@ do
|
||||||
| -silent | --silent | --silen | --sile | --sil)
|
| -silent | --silent | --silen | --sile | --sil)
|
||||||
silent=yes ;;
|
silent=yes ;;
|
||||||
|
|
||||||
|
-runstatedir | --runstatedir | --runstatedi | --runstated \
|
||||||
|
| --runstate | --runstat | --runsta | --runst | --runs \
|
||||||
|
| --run | --ru | --r)
|
||||||
|
ac_prev=runstatedir ;;
|
||||||
|
-runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
|
||||||
|
| --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
|
||||||
|
| --run=* | --ru=* | --r=*)
|
||||||
|
runstatedir=$ac_optarg ;;
|
||||||
|
|
||||||
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
|
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
|
||||||
ac_prev=sbindir ;;
|
ac_prev=sbindir ;;
|
||||||
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
|
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
|
||||||
|
@ -1078,7 +1089,7 @@ fi
|
||||||
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
|
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
|
||||||
datadir sysconfdir sharedstatedir localstatedir includedir \
|
datadir sysconfdir sharedstatedir localstatedir includedir \
|
||||||
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
|
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
|
||||||
libdir localedir mandir
|
libdir localedir mandir runstatedir
|
||||||
do
|
do
|
||||||
eval ac_val=\$$ac_var
|
eval ac_val=\$$ac_var
|
||||||
# Remove trailing slashes.
|
# Remove trailing slashes.
|
||||||
|
@ -1231,6 +1242,7 @@ Fine tuning of the installation directories:
|
||||||
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
||||||
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
||||||
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
||||||
|
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
|
||||||
--libdir=DIR object code libraries [EPREFIX/lib]
|
--libdir=DIR object code libraries [EPREFIX/lib]
|
||||||
--includedir=DIR C header files [PREFIX/include]
|
--includedir=DIR C header files [PREFIX/include]
|
||||||
--oldincludedir=DIR C header files for non-gcc [/usr/include]
|
--oldincludedir=DIR C header files for non-gcc [/usr/include]
|
||||||
|
@ -1906,48 +1918,205 @@ if test -z "$PG_CONFIG"; then
|
||||||
as_fn_error $? "Could not find pg_config. Set PG_CONFIG or PATH." "$LINENO" 5
|
as_fn_error $? "Could not find pg_config. Set PG_CONFIG or PATH." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# check we're building against a supported version of PostgreSQL
|
# check that USE_FLOAT8_BYVAL is set (passing by reference is not supported)
|
||||||
citusac_pg_config_version=$($PG_CONFIG --version 2>/dev/null)
|
CFLAGS="-I $($PG_CONFIG --includedir)"
|
||||||
version_num=$(echo "$citusac_pg_config_version"|
|
|
||||||
$SED -e 's/^PostgreSQL \([0-9]*\)\.\([0-9]*\)\([a-zA-Z0-9.]*\)$/\1.\2/')
|
|
||||||
|
|
||||||
if test -z "$version_num"; then
|
|
||||||
as_fn_error $? "Could not detect PostgreSQL version from pg_config." "$LINENO" 5
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$version_num" != '9.5' -a "$version_num" != '9.6'; then
|
|
||||||
as_fn_error $? "Citus is not compatible with the detected PostgreSQL version ${version_num}." "$LINENO" 5
|
|
||||||
else
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: building against PostgreSQL $version_num" >&5
|
|
||||||
$as_echo "$as_me: building against PostgreSQL $version_num" >&6;}
|
|
||||||
fi;
|
|
||||||
|
|
||||||
# Check whether we're building inside the source tree, if not, prepare
|
|
||||||
# the build directory.
|
|
||||||
if test "$srcdir" -ef '.' ; then
|
|
||||||
vpath_build=no
|
|
||||||
else
|
|
||||||
vpath_build=yes
|
|
||||||
$as_echo_n "preparing build tree... " >&6
|
|
||||||
citusac_abs_top_srcdir=`cd "$srcdir" && pwd`
|
|
||||||
$SHELL "$citusac_abs_top_srcdir/prep_buildtree" "$citusac_abs_top_srcdir" "." \
|
|
||||||
|| as_fn_error $? "failed" "$LINENO" 5
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
|
|
||||||
$as_echo "done" >&6; }
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
# Allow to overwrite the C compiler, default to the one postgres was
|
|
||||||
# compiled with. We don't want autoconf's default CFLAGS though, so save
|
|
||||||
# those.
|
|
||||||
SAVE_CFLAGS="$CFLAGS"
|
|
||||||
ac_ext=c
|
ac_ext=c
|
||||||
ac_cpp='$CPP $CPPFLAGS'
|
ac_cpp='$CPP $CPPFLAGS'
|
||||||
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||||
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
if test -n "$ac_tool_prefix"; then
|
if test -n "$ac_tool_prefix"; then
|
||||||
for ac_prog in $($PG_CONFIG --cc)
|
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
|
||||||
|
set dummy ${ac_tool_prefix}gcc; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_prog_CC+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test -n "$CC"; then
|
||||||
|
ac_cv_prog_CC="$CC" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_CC="${ac_tool_prefix}gcc"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
CC=$ac_cv_prog_CC
|
||||||
|
if test -n "$CC"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
|
||||||
|
$as_echo "$CC" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
if test -z "$ac_cv_prog_CC"; then
|
||||||
|
ac_ct_CC=$CC
|
||||||
|
# Extract the first word of "gcc", so it can be a program name with args.
|
||||||
|
set dummy gcc; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_prog_ac_ct_CC+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test -n "$ac_ct_CC"; then
|
||||||
|
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_ac_ct_CC="gcc"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
ac_ct_CC=$ac_cv_prog_ac_ct_CC
|
||||||
|
if test -n "$ac_ct_CC"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
|
||||||
|
$as_echo "$ac_ct_CC" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "x$ac_ct_CC" = x; then
|
||||||
|
CC=""
|
||||||
|
else
|
||||||
|
case $cross_compiling:$ac_tool_warned in
|
||||||
|
yes:)
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
|
||||||
|
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
|
||||||
|
ac_tool_warned=yes ;;
|
||||||
|
esac
|
||||||
|
CC=$ac_ct_CC
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
CC="$ac_cv_prog_CC"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$CC"; then
|
||||||
|
if test -n "$ac_tool_prefix"; then
|
||||||
|
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
|
||||||
|
set dummy ${ac_tool_prefix}cc; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_prog_CC+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test -n "$CC"; then
|
||||||
|
ac_cv_prog_CC="$CC" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_CC="${ac_tool_prefix}cc"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
CC=$ac_cv_prog_CC
|
||||||
|
if test -n "$CC"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
|
||||||
|
$as_echo "$CC" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if test -z "$CC"; then
|
||||||
|
# Extract the first word of "cc", so it can be a program name with args.
|
||||||
|
set dummy cc; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_prog_CC+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test -n "$CC"; then
|
||||||
|
ac_cv_prog_CC="$CC" # Let the user override the test.
|
||||||
|
else
|
||||||
|
ac_prog_rejected=no
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
|
||||||
|
ac_prog_rejected=yes
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
ac_cv_prog_CC="cc"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
if test $ac_prog_rejected = yes; then
|
||||||
|
# We found a bogon in the path, so make sure we never use it.
|
||||||
|
set dummy $ac_cv_prog_CC
|
||||||
|
shift
|
||||||
|
if test $# != 0; then
|
||||||
|
# We chose a different compiler from the bogus one.
|
||||||
|
# However, it has the same basename, so the bogon will be chosen
|
||||||
|
# first if we set CC to just the basename; use the full file name.
|
||||||
|
shift
|
||||||
|
ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
CC=$ac_cv_prog_CC
|
||||||
|
if test -n "$CC"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
|
||||||
|
$as_echo "$CC" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
if test -z "$CC"; then
|
||||||
|
if test -n "$ac_tool_prefix"; then
|
||||||
|
for ac_prog in cl.exe
|
||||||
do
|
do
|
||||||
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
|
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
|
||||||
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
|
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
|
||||||
|
@ -1991,7 +2160,7 @@ fi
|
||||||
fi
|
fi
|
||||||
if test -z "$CC"; then
|
if test -z "$CC"; then
|
||||||
ac_ct_CC=$CC
|
ac_ct_CC=$CC
|
||||||
for ac_prog in $($PG_CONFIG --cc)
|
for ac_prog in cl.exe
|
||||||
do
|
do
|
||||||
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
||||||
set dummy $ac_prog; ac_word=$2
|
set dummy $ac_prog; ac_word=$2
|
||||||
|
@ -2046,6 +2215,8 @@ esac
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||||
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||||
|
@ -2538,6 +2709,410 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||||
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
|
|
||||||
|
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
#include "pg_config.h"
|
||||||
|
#ifndef USE_FLOAT8_BYVAL
|
||||||
|
#error "USE_FLOAT8_BYVAL must be defined for Citus to work"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
USE_FLOAT8_BYVAL="yes"
|
||||||
|
else
|
||||||
|
USE_FLOAT8_BYVAL="no"
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
|
||||||
|
if test "$USE_FLOAT8_BYVAL" = "no"; then
|
||||||
|
as_fn_error $? "Postgres must have been configured with --enable-float8-byval \
|
||||||
|
(the default) in order for Citus to run correctly" "$LINENO" 5
|
||||||
|
fi
|
||||||
|
|
||||||
|
# check we're building against a supported version of PostgreSQL
|
||||||
|
citusac_pg_config_version=$($PG_CONFIG --version 2>/dev/null)
|
||||||
|
version_num=$(echo "$citusac_pg_config_version"|
|
||||||
|
$SED -e 's/^PostgreSQL \([0-9]*\)\.\([0-9]*\)\([a-zA-Z0-9.]*\)$/\1.\2/')
|
||||||
|
|
||||||
|
if test -z "$version_num"; then
|
||||||
|
as_fn_error $? "Could not detect PostgreSQL version from pg_config." "$LINENO" 5
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$version_num" != '9.5' -a "$version_num" != '9.6'; then
|
||||||
|
as_fn_error $? "Citus is not compatible with the detected PostgreSQL version ${version_num}." "$LINENO" 5
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: building against PostgreSQL $version_num" >&5
|
||||||
|
$as_echo "$as_me: building against PostgreSQL $version_num" >&6;}
|
||||||
|
fi;
|
||||||
|
|
||||||
|
# Check whether we're building inside the source tree, if not, prepare
|
||||||
|
# the build directory.
|
||||||
|
if test "$srcdir" -ef '.' ; then
|
||||||
|
vpath_build=no
|
||||||
|
else
|
||||||
|
vpath_build=yes
|
||||||
|
$as_echo_n "preparing build tree... " >&6
|
||||||
|
citusac_abs_top_srcdir=`cd "$srcdir" && pwd`
|
||||||
|
$SHELL "$citusac_abs_top_srcdir/prep_buildtree" "$citusac_abs_top_srcdir" "." \
|
||||||
|
|| as_fn_error $? "failed" "$LINENO" 5
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
|
||||||
|
$as_echo "done" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Allow to overwrite the C compiler, default to the one postgres was
|
||||||
|
# compiled with. We don't want autoconf's default CFLAGS though, so save
|
||||||
|
# those.
|
||||||
|
SAVE_CFLAGS="$CFLAGS"
|
||||||
|
ac_ext=c
|
||||||
|
ac_cpp='$CPP $CPPFLAGS'
|
||||||
|
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||||
|
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||||
|
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
|
if test -n "$ac_tool_prefix"; then
|
||||||
|
for ac_prog in $($PG_CONFIG --cc)
|
||||||
|
do
|
||||||
|
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
|
||||||
|
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_prog_CC+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test -n "$CC"; then
|
||||||
|
ac_cv_prog_CC="$CC" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
CC=$ac_cv_prog_CC
|
||||||
|
if test -n "$CC"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
|
||||||
|
$as_echo "$CC" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
test -n "$CC" && break
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
if test -z "$CC"; then
|
||||||
|
ac_ct_CC=$CC
|
||||||
|
for ac_prog in $($PG_CONFIG --cc)
|
||||||
|
do
|
||||||
|
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
||||||
|
set dummy $ac_prog; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_prog_ac_ct_CC+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if test -n "$ac_ct_CC"; then
|
||||||
|
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_ac_ct_CC="$ac_prog"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
ac_ct_CC=$ac_cv_prog_ac_ct_CC
|
||||||
|
if test -n "$ac_ct_CC"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
|
||||||
|
$as_echo "$ac_ct_CC" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
test -n "$ac_ct_CC" && break
|
||||||
|
done
|
||||||
|
|
||||||
|
if test "x$ac_ct_CC" = x; then
|
||||||
|
CC=""
|
||||||
|
else
|
||||||
|
case $cross_compiling:$ac_tool_warned in
|
||||||
|
yes:)
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
|
||||||
|
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
|
||||||
|
ac_tool_warned=yes ;;
|
||||||
|
esac
|
||||||
|
CC=$ac_ct_CC
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||||
|
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||||
|
as_fn_error $? "no acceptable C compiler found in \$PATH
|
||||||
|
See \`config.log' for more details" "$LINENO" 5; }
|
||||||
|
|
||||||
|
# Provide some information about the compiler.
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
|
||||||
|
set X $ac_compile
|
||||||
|
ac_compiler=$2
|
||||||
|
for ac_option in --version -v -V -qversion; do
|
||||||
|
{ { ac_try="$ac_compiler $ac_option >&5"
|
||||||
|
case "(($ac_try" in
|
||||||
|
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||||||
|
*) ac_try_echo=$ac_try;;
|
||||||
|
esac
|
||||||
|
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
|
||||||
|
$as_echo "$ac_try_echo"; } >&5
|
||||||
|
(eval "$ac_compiler $ac_option >&5") 2>conftest.err
|
||||||
|
ac_status=$?
|
||||||
|
if test -s conftest.err; then
|
||||||
|
sed '10a\
|
||||||
|
... rest of stderr output deleted ...
|
||||||
|
10q' conftest.err >conftest.er1
|
||||||
|
cat conftest.er1 >&5
|
||||||
|
fi
|
||||||
|
rm -f conftest.er1 conftest.err
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
|
test $ac_status = 0; }
|
||||||
|
done
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
|
||||||
|
$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
|
||||||
|
if ${ac_cv_c_compiler_gnu+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
#ifndef __GNUC__
|
||||||
|
choke me
|
||||||
|
#endif
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
ac_compiler_gnu=yes
|
||||||
|
else
|
||||||
|
ac_compiler_gnu=no
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
ac_cv_c_compiler_gnu=$ac_compiler_gnu
|
||||||
|
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
|
||||||
|
$as_echo "$ac_cv_c_compiler_gnu" >&6; }
|
||||||
|
if test $ac_compiler_gnu = yes; then
|
||||||
|
GCC=yes
|
||||||
|
else
|
||||||
|
GCC=
|
||||||
|
fi
|
||||||
|
ac_test_CFLAGS=${CFLAGS+set}
|
||||||
|
ac_save_CFLAGS=$CFLAGS
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
|
||||||
|
$as_echo_n "checking whether $CC accepts -g... " >&6; }
|
||||||
|
if ${ac_cv_prog_cc_g+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
ac_save_c_werror_flag=$ac_c_werror_flag
|
||||||
|
ac_c_werror_flag=yes
|
||||||
|
ac_cv_prog_cc_g=no
|
||||||
|
CFLAGS="-g"
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
ac_cv_prog_cc_g=yes
|
||||||
|
else
|
||||||
|
CFLAGS=""
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
|
||||||
|
else
|
||||||
|
ac_c_werror_flag=$ac_save_c_werror_flag
|
||||||
|
CFLAGS="-g"
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
ac_cv_prog_cc_g=yes
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
ac_c_werror_flag=$ac_save_c_werror_flag
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
|
||||||
|
$as_echo "$ac_cv_prog_cc_g" >&6; }
|
||||||
|
if test "$ac_test_CFLAGS" = set; then
|
||||||
|
CFLAGS=$ac_save_CFLAGS
|
||||||
|
elif test $ac_cv_prog_cc_g = yes; then
|
||||||
|
if test "$GCC" = yes; then
|
||||||
|
CFLAGS="-g -O2"
|
||||||
|
else
|
||||||
|
CFLAGS="-g"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if test "$GCC" = yes; then
|
||||||
|
CFLAGS="-O2"
|
||||||
|
else
|
||||||
|
CFLAGS=
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
|
||||||
|
$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
|
||||||
|
if ${ac_cv_prog_cc_c89+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
ac_cv_prog_cc_c89=no
|
||||||
|
ac_save_CC=$CC
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
#include <stdarg.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
struct stat;
|
||||||
|
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
|
||||||
|
struct buf { int x; };
|
||||||
|
FILE * (*rcsopen) (struct buf *, struct stat *, int);
|
||||||
|
static char *e (p, i)
|
||||||
|
char **p;
|
||||||
|
int i;
|
||||||
|
{
|
||||||
|
return p[i];
|
||||||
|
}
|
||||||
|
static char *f (char * (*g) (char **, int), char **p, ...)
|
||||||
|
{
|
||||||
|
char *s;
|
||||||
|
va_list v;
|
||||||
|
va_start (v,p);
|
||||||
|
s = g (p, va_arg (v,int));
|
||||||
|
va_end (v);
|
||||||
|
return s;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
||||||
|
function prototypes and stuff, but not '\xHH' hex character constants.
|
||||||
|
These don't provoke an error unfortunately, instead are silently treated
|
||||||
|
as 'x'. The following induces an error, until -std is added to get
|
||||||
|
proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
|
||||||
|
array size at least. It's necessary to write '\x00'==0 to get something
|
||||||
|
that's true only with -std. */
|
||||||
|
int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
||||||
|
|
||||||
|
/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
||||||
|
inside strings and character constants. */
|
||||||
|
#define FOO(x) 'x'
|
||||||
|
int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
||||||
|
|
||||||
|
int test (int i, double x);
|
||||||
|
struct s1 {int (*f) (int a);};
|
||||||
|
struct s2 {int (*f) (double a);};
|
||||||
|
int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
|
||||||
|
int argc;
|
||||||
|
char **argv;
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
|
||||||
|
-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
|
||||||
|
do
|
||||||
|
CC="$ac_save_CC $ac_arg"
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
ac_cv_prog_cc_c89=$ac_arg
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext
|
||||||
|
test "x$ac_cv_prog_cc_c89" != "xno" && break
|
||||||
|
done
|
||||||
|
rm -f conftest.$ac_ext
|
||||||
|
CC=$ac_save_CC
|
||||||
|
|
||||||
|
fi
|
||||||
|
# AC_CACHE_VAL
|
||||||
|
case "x$ac_cv_prog_cc_c89" in
|
||||||
|
x)
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
|
||||||
|
$as_echo "none needed" >&6; } ;;
|
||||||
|
xno)
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
|
||||||
|
$as_echo "unsupported" >&6; } ;;
|
||||||
|
*)
|
||||||
|
CC="$CC $ac_cv_prog_cc_c89"
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
|
||||||
|
$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
|
||||||
|
esac
|
||||||
|
if test "x$ac_cv_prog_cc_c89" != xno; then :
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
ac_ext=c
|
||||||
|
ac_cpp='$CPP $CPPFLAGS'
|
||||||
|
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||||
|
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||||
|
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
|
|
||||||
CFLAGS="$SAVE_CFLAGS"
|
CFLAGS="$SAVE_CFLAGS"
|
||||||
|
|
||||||
# check for a number of CFLAGS that make development easier
|
# check for a number of CFLAGS that make development easier
|
||||||
|
|
14
configure.in
14
configure.in
|
@ -27,6 +27,20 @@ if test -z "$PG_CONFIG"; then
|
||||||
AC_MSG_ERROR([Could not find pg_config. Set PG_CONFIG or PATH.])
|
AC_MSG_ERROR([Could not find pg_config. Set PG_CONFIG or PATH.])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# check that USE_FLOAT8_BYVAL is set (passing by reference is not supported)
|
||||||
|
CFLAGS="-I $($PG_CONFIG --includedir)"
|
||||||
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
||||||
|
#include "pg_config.h"
|
||||||
|
#ifndef USE_FLOAT8_BYVAL
|
||||||
|
#error "USE_FLOAT8_BYVAL must be defined for Citus to work"
|
||||||
|
#endif
|
||||||
|
]])], [USE_FLOAT8_BYVAL="yes"], [USE_FLOAT8_BYVAL="no"])
|
||||||
|
|
||||||
|
if test [ "$USE_FLOAT8_BYVAL" = "no"]; then
|
||||||
|
AC_MSG_ERROR([Postgres must have been configured with --enable-float8-byval \
|
||||||
|
(the default) in order for Citus to run correctly])
|
||||||
|
fi
|
||||||
|
|
||||||
# check we're building against a supported version of PostgreSQL
|
# check we're building against a supported version of PostgreSQL
|
||||||
citusac_pg_config_version=$($PG_CONFIG --version 2>/dev/null)
|
citusac_pg_config_version=$($PG_CONFIG --version 2>/dev/null)
|
||||||
version_num=$(echo "$citusac_pg_config_version"|
|
version_num=$(echo "$citusac_pg_config_version"|
|
||||||
|
|
|
@ -8,7 +8,7 @@ EXTENSION = citus
|
||||||
EXTVERSIONS = 5.0 5.0-1 5.0-2 \
|
EXTVERSIONS = 5.0 5.0-1 5.0-2 \
|
||||||
5.1-1 5.1-2 5.1-3 5.1-4 5.1-5 5.1-6 5.1-7 5.1-8 \
|
5.1-1 5.1-2 5.1-3 5.1-4 5.1-5 5.1-6 5.1-7 5.1-8 \
|
||||||
5.2-1 5.2-2 5.2-3 5.2-4 \
|
5.2-1 5.2-2 5.2-3 5.2-4 \
|
||||||
6.0-1 6.0-2 6.0-3 6.0-4 6.0-5 6.0-6 6.0-7 6.0-8 6.0-9 6.0-10
|
6.0-1 6.0-2 6.0-3 6.0-4 6.0-5 6.0-6 6.0-7 6.0-8 6.0-9 6.0-10 6.0-11
|
||||||
|
|
||||||
# All citus--*.sql files in the source directory
|
# All citus--*.sql files in the source directory
|
||||||
DATA = $(patsubst $(citus_abs_srcdir)/%.sql,%.sql,$(wildcard $(citus_abs_srcdir)/$(EXTENSION)--*--*.sql))
|
DATA = $(patsubst $(citus_abs_srcdir)/%.sql,%.sql,$(wildcard $(citus_abs_srcdir)/$(EXTENSION)--*--*.sql))
|
||||||
|
@ -78,6 +78,8 @@ $(EXTENSION)--6.0-9.sql: $(EXTENSION)--6.0-8.sql $(EXTENSION)--6.0-8--6.0-9.sql
|
||||||
cat $^ > $@
|
cat $^ > $@
|
||||||
$(EXTENSION)--6.0-10.sql: $(EXTENSION)--6.0-9.sql $(EXTENSION)--6.0-9--6.0-10.sql
|
$(EXTENSION)--6.0-10.sql: $(EXTENSION)--6.0-9.sql $(EXTENSION)--6.0-9--6.0-10.sql
|
||||||
cat $^ > $@
|
cat $^ > $@
|
||||||
|
$(EXTENSION)--6.0-11.sql: $(EXTENSION)--6.0-10.sql $(EXTENSION)--6.0-10--6.0-11.sql
|
||||||
|
cat $^ > $@
|
||||||
|
|
||||||
NO_PGXS = 1
|
NO_PGXS = 1
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
/*
|
||||||
|
* nodeport should be 32-bit, not 64-bit
|
||||||
|
*/
|
||||||
|
ALTER TABLE pg_dist_shard_placement ALTER nodeport TYPE int4;
|
|
@ -1,6 +1,6 @@
|
||||||
# Citus extension
|
# Citus extension
|
||||||
comment = 'Citus distributed database'
|
comment = 'Citus distributed database'
|
||||||
default_version = '6.0-10'
|
default_version = '6.0-11'
|
||||||
module_pathname = '$libdir/citus'
|
module_pathname = '$libdir/citus'
|
||||||
relocatable = false
|
relocatable = false
|
||||||
schema = pg_catalog
|
schema = pg_catalog
|
||||||
|
|
|
@ -291,7 +291,8 @@ master_create_distributed_table(PG_FUNCTION_ARGS)
|
||||||
CharGetDatum(distributionMethod);
|
CharGetDatum(distributionMethod);
|
||||||
newValues[Anum_pg_dist_partition_partkey - 1] =
|
newValues[Anum_pg_dist_partition_partkey - 1] =
|
||||||
CStringGetTextDatum(distributionKeyString);
|
CStringGetTextDatum(distributionKeyString);
|
||||||
newValues[Anum_pg_dist_partition_colocationid - 1] = INVALID_COLOCATION_ID;
|
newValues[Anum_pg_dist_partition_colocationid - 1] =
|
||||||
|
Int64GetDatum(INVALID_COLOCATION_ID);
|
||||||
newValues[Anum_pg_dist_partition_repmodel - 1] = CharGetDatum(replicationModel);
|
newValues[Anum_pg_dist_partition_repmodel - 1] = CharGetDatum(replicationModel);
|
||||||
|
|
||||||
newTuple = heap_form_tuple(RelationGetDescr(pgDistPartition), newValues, newNulls);
|
newTuple = heap_form_tuple(RelationGetDescr(pgDistPartition), newValues, newNulls);
|
||||||
|
|
|
@ -325,6 +325,8 @@ TupleToShardPlacement(TupleDesc tupleDescriptor, HeapTuple heapTuple)
|
||||||
{
|
{
|
||||||
ShardPlacement *shardPlacement = NULL;
|
ShardPlacement *shardPlacement = NULL;
|
||||||
bool isNull = false;
|
bool isNull = false;
|
||||||
|
Oid nodePortAttTypeId =
|
||||||
|
tupleDescriptor->attrs[Anum_pg_dist_shard_placement_nodeport - 1]->atttypid;
|
||||||
|
|
||||||
Datum placementId = heap_getattr(heapTuple, Anum_pg_dist_shard_placement_placementid,
|
Datum placementId = heap_getattr(heapTuple, Anum_pg_dist_shard_placement_placementid,
|
||||||
tupleDescriptor, &isNull);
|
tupleDescriptor, &isNull);
|
||||||
|
@ -350,7 +352,14 @@ TupleToShardPlacement(TupleDesc tupleDescriptor, HeapTuple heapTuple)
|
||||||
shardPlacement->shardLength = DatumGetInt64(shardLength);
|
shardPlacement->shardLength = DatumGetInt64(shardLength);
|
||||||
shardPlacement->shardState = DatumGetUInt32(shardState);
|
shardPlacement->shardState = DatumGetUInt32(shardState);
|
||||||
shardPlacement->nodeName = TextDatumGetCString(nodeName);
|
shardPlacement->nodeName = TextDatumGetCString(nodeName);
|
||||||
shardPlacement->nodePort = DatumGetInt64(nodePort);
|
if (nodePortAttTypeId == INT4OID)
|
||||||
|
{
|
||||||
|
shardPlacement->nodePort = DatumGetInt32(nodePort);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
shardPlacement->nodePort = DatumGetInt64(nodePort);
|
||||||
|
}
|
||||||
|
|
||||||
return shardPlacement;
|
return shardPlacement;
|
||||||
}
|
}
|
||||||
|
@ -439,7 +448,7 @@ InsertShardPlacementRow(uint64 shardId, uint64 placementId,
|
||||||
values[Anum_pg_dist_shard_placement_shardstate - 1] = CharGetDatum(shardState);
|
values[Anum_pg_dist_shard_placement_shardstate - 1] = CharGetDatum(shardState);
|
||||||
values[Anum_pg_dist_shard_placement_shardlength - 1] = Int64GetDatum(shardLength);
|
values[Anum_pg_dist_shard_placement_shardlength - 1] = Int64GetDatum(shardLength);
|
||||||
values[Anum_pg_dist_shard_placement_nodename - 1] = CStringGetTextDatum(nodeName);
|
values[Anum_pg_dist_shard_placement_nodename - 1] = CStringGetTextDatum(nodeName);
|
||||||
values[Anum_pg_dist_shard_placement_nodeport - 1] = Int64GetDatum(nodePort);
|
values[Anum_pg_dist_shard_placement_nodeport - 1] = Int32GetDatum(nodePort);
|
||||||
values[Anum_pg_dist_shard_placement_placementid - 1] = Int64GetDatum(placementId);
|
values[Anum_pg_dist_shard_placement_placementid - 1] = Int64GetDatum(placementId);
|
||||||
|
|
||||||
/* open shard placement relation and insert new tuple */
|
/* open shard placement relation and insert new tuple */
|
||||||
|
|
|
@ -461,7 +461,7 @@ DeleteNodeRow(char *nodeName, int32 nodePort)
|
||||||
ScanKeyInit(&scanKey[0], Anum_pg_dist_node_nodename,
|
ScanKeyInit(&scanKey[0], Anum_pg_dist_node_nodename,
|
||||||
BTEqualStrategyNumber, F_TEXTEQ, CStringGetTextDatum(nodeName));
|
BTEqualStrategyNumber, F_TEXTEQ, CStringGetTextDatum(nodeName));
|
||||||
ScanKeyInit(&scanKey[1], Anum_pg_dist_node_nodeport,
|
ScanKeyInit(&scanKey[1], Anum_pg_dist_node_nodeport,
|
||||||
BTEqualStrategyNumber, F_INT8EQ, Int32GetDatum(nodePort));
|
BTEqualStrategyNumber, F_INT4EQ, Int32GetDatum(nodePort));
|
||||||
|
|
||||||
heapScan = systable_beginscan(pgDistNode, InvalidOid, indexOK,
|
heapScan = systable_beginscan(pgDistNode, InvalidOid, indexOK,
|
||||||
NULL, scanKeyCount, scanKey);
|
NULL, scanKeyCount, scanKey);
|
||||||
|
|
|
@ -36,6 +36,7 @@ ALTER EXTENSION citus UPDATE TO '6.0-7';
|
||||||
ALTER EXTENSION citus UPDATE TO '6.0-8';
|
ALTER EXTENSION citus UPDATE TO '6.0-8';
|
||||||
ALTER EXTENSION citus UPDATE TO '6.0-9';
|
ALTER EXTENSION citus UPDATE TO '6.0-9';
|
||||||
ALTER EXTENSION citus UPDATE TO '6.0-10';
|
ALTER EXTENSION citus UPDATE TO '6.0-10';
|
||||||
|
ALTER EXTENSION citus UPDATE TO '6.0-11';
|
||||||
-- drop extension an re-create in newest version
|
-- drop extension an re-create in newest version
|
||||||
DROP EXTENSION citus;
|
DROP EXTENSION citus;
|
||||||
\c
|
\c
|
||||||
|
|
|
@ -41,6 +41,7 @@ ALTER EXTENSION citus UPDATE TO '6.0-7';
|
||||||
ALTER EXTENSION citus UPDATE TO '6.0-8';
|
ALTER EXTENSION citus UPDATE TO '6.0-8';
|
||||||
ALTER EXTENSION citus UPDATE TO '6.0-9';
|
ALTER EXTENSION citus UPDATE TO '6.0-9';
|
||||||
ALTER EXTENSION citus UPDATE TO '6.0-10';
|
ALTER EXTENSION citus UPDATE TO '6.0-10';
|
||||||
|
ALTER EXTENSION citus UPDATE TO '6.0-11';
|
||||||
|
|
||||||
-- drop extension an re-create in newest version
|
-- drop extension an re-create in newest version
|
||||||
DROP EXTENSION citus;
|
DROP EXTENSION citus;
|
||||||
|
|
Loading…
Reference in New Issue