diff --git a/.travis.yml b/.travis.yml index 8518f79aa45e2883a717b3f7f88886f0c0dd123a..d407b4df772c2fc6fe2df28f004fd362b8c5fecb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -70,7 +70,19 @@ env: script: - cd ${TRAVIS_BUILD_DIR} - - ./configure --with-openssl --with-ldap --with-libcurl --prefix=${TRAVIS_BUILD_DIR}/gpsql --disable-orca --disable-gpcloud --enable-pxf --enable-mapreduce --with-perl --enable-orafce + - | + ./configure \ + --with-openssl \ + --with-ldap \ + --with-libcurl \ + --prefix=${TRAVIS_BUILD_DIR}/gpsql \ + --disable-orca \ + --disable-gpcloud \ + --enable-pxf \ + --enable-mapreduce \ + --with-perl \ + --enable-orafce \ + --without-zstd - make - make install diff --git a/concourse/pipelines/templates/gpdb-tpl.yml b/concourse/pipelines/templates/gpdb-tpl.yml index ae5e428ce7aa876ea2af9f8aa38570f5f346d7ba..7e490548c75acfc2e2494a07aa9b7c123e8d4cef 100644 --- a/concourse/pipelines/templates/gpdb-tpl.yml +++ b/concourse/pipelines/templates/gpdb-tpl.yml @@ -1721,6 +1721,8 @@ jobs: image: centos6-test-gpdb6 params: TEST_OS: sles12 + # TODO: remove this line as soon as zstd is vendored in the binary installer for SLES12 + CONFIGURE_FLAGS: --without-zstd on_success: <<: *ccp_destroy ensure: diff --git a/concourse/scripts/builds/GpBuild.py b/concourse/scripts/builds/GpBuild.py index 7044f519ac2fa9bcb3114deb1af2d8a971f8f5b4..de4e2654ba2c74157141ad1ded1cdf92598d8f02 100755 --- a/concourse/scripts/builds/GpBuild.py +++ b/concourse/scripts/builds/GpBuild.py @@ -15,6 +15,8 @@ class GpBuild(GpdbBuildBase): "--with-perl", "--with-libxml", "--with-python", + # TODO: Remove this line as soon as zstd is built into Ubuntu docker image + "--without-zstd", "--prefix={0}".format(INSTALL_DIR) ] self.source_gcc_env_cmd = '' diff --git a/concourse/scripts/common.bash b/concourse/scripts/common.bash index 8ce50671c7153ceebc17bdad74b805f50471e699..5b9eadabe9e17b31b98aeb85281666ee80938193 100644 --- a/concourse/scripts/common.bash +++ b/concourse/scripts/common.bash @@ -26,6 +26,8 @@ function configure() { # on these options for deciding what to test. Since we don't ship # Perl on SLES we must also skip GPMapreduce as it uses pl/perl. if [ "$TEST_OS" == "sles" ]; then + # TODO: remove this line as soon as the SLES image has zstd baked in + CONFIGURE_FLAGS="${CONFIGURE_FLAGS} --without-zstd" ./configure --prefix=/usr/local/greenplum-db-devel --with-python --with-libxml --enable-orafce --disable-orca ${CONFIGURE_FLAGS} else ./configure --prefix=/usr/local/greenplum-db-devel --with-perl --with-python --with-libxml --enable-mapreduce --enable-orafce --disable-orca ${CONFIGURE_FLAGS} diff --git a/concourse/scripts/compile_gpdb_open_source_centos.bash b/concourse/scripts/compile_gpdb_open_source_centos.bash index c177717eb3f72abd9dfcb75e16126db9850d76b0..3531253324f4c8d9c045f9934282d56539ef3156 100755 --- a/concourse/scripts/compile_gpdb_open_source_centos.bash +++ b/concourse/scripts/compile_gpdb_open_source_centos.bash @@ -46,7 +46,7 @@ function build_gpdb() { pushd gpdb_src source /opt/gcc_env.sh CC=$(which gcc) CXX=$(which g++) ./configure --enable-mapreduce --with-perl --with-libxml \ - --disable-orca --with-python --disable-gpfdist --with-zstd --prefix=${GREENPLUM_INSTALL_DIR} + --disable-orca --with-python --disable-gpfdist --with-zstd --prefix=${GREENPLUM_INSTALL_DIR} # Use -j4 to speed up the build. (Doesn't seem worth trying to guess a better # value based on number of CPUs or anything like that. Going above -j4 wouldn't # make it much faster, and -j4 is small enough to not hurt too badly even on diff --git a/concourse/scripts/compile_gpdb_open_source_ubuntu.bash b/concourse/scripts/compile_gpdb_open_source_ubuntu.bash index 513b493b9c9bc703a81a73d6653600219440d1b3..2ec7862835556ee16fa739e90747173c1e394e10 100755 --- a/concourse/scripts/compile_gpdb_open_source_ubuntu.bash +++ b/concourse/scripts/compile_gpdb_open_source_ubuntu.bash @@ -28,6 +28,8 @@ function install_external_depends() { function build_gpdb() { build_external_depends pushd gpdb_src + # TODO: remove this flag after adding zstd to the ubuntu build images + CONFIGURE_FLAGS="${CONFIGURE_FLAGS} --without-zstd" CWD=$(pwd) LD_LIBRARY_PATH=${CWD}/depends/build/lib CC=$(which gcc) CXX=$(which g++) ./configure --enable-mapreduce --enable-orafce --with-gssapi --with-perl --with-libxml \ --with-python \ diff --git a/concourse/scripts/deb_create_package.bash b/concourse/scripts/deb_create_package.bash index f12f4b28cea5ab5ea67acfe16f2876d98ef1c2dc..ae56a75b0f2cf5906dfd1afe2cb424f0ffe28d25 100755 --- a/concourse/scripts/deb_create_package.bash +++ b/concourse/scripts/deb_create_package.bash @@ -26,6 +26,11 @@ report_error() { pushd ${SRC_DIR} VERSION=`./getversion | tr " " "."`-oss + + # EXTRA_CONFIGURE_FLAGS is used by debuild; see the debian-release repo + # TODO: remove the EXTRA_CONFIGURE_FLAGS once zstd is added to the ubuntu docker images + export EXTRA_CONFIGURE_FLAGS="--without-zstd" + SHA=`git rev-parse --short HEAD` MESSAGE="Bumping to Greenplum version $VERSION, git SHA $SHA" PACKAGE=`cat debian/control | egrep "^Package: " | cut -d " " -f 2` diff --git a/concourse/scripts/ic_gpdb_sles12.bash b/concourse/scripts/ic_gpdb_sles12.bash index 1a0a66f2f0089471ce597805552dce48a92d3f8d..b228c859ac18b70bcc52b310820fa10dc9343198 100755 --- a/concourse/scripts/ic_gpdb_sles12.bash +++ b/concourse/scripts/ic_gpdb_sles12.bash @@ -39,10 +39,12 @@ setup_demo_cluster() { cp -a ${SRCDIR_OLD} ${SRCDIR_NEW} cd ${SRCDIR_NEW} + # TODO: remove `--without-zstd` as soon as zstd is vendored in the binary installer for SLES12 ./configure --prefix=/usr/local/greenplum-db-devel \ --with-python --disable-orca --without-readline \ --without-zlib --disable-gpfdist --without-libcurl \ - --disable-pxf --without-libbz2 --enable-orafce + --disable-pxf --without-libbz2 --enable-orafce \ + --without-zstd export DEFAULT_QD_MAX_CONNECT=150 export STATEMENT_MEM=250MB diff --git a/concourse/scripts/ic_gpdb_ubuntu.bash b/concourse/scripts/ic_gpdb_ubuntu.bash index acbc3147b4d00bb7f37d38a1061585c1e510bbb1..64e86626b68e5fdbebb9fdaf921b7dfcb5216d9f 100755 --- a/concourse/scripts/ic_gpdb_ubuntu.bash +++ b/concourse/scripts/ic_gpdb_ubuntu.bash @@ -12,6 +12,8 @@ function load_transfered_bits_into_install_dir() { function configure() { pushd gpdb_src + # TODO: remove this line as soon as zstd is vendored in the installer for ubuntu + CONFIGURE_FLAGS="${CONFIGURE_FLAGS} --without-zstd" ./configure --prefix=${GREENPLUM_INSTALL_DIR} --with-gssapi --with-perl --with-python --with-libxml --enable-mapreduce --enable-orafce --disable-orca ${CONFIGURE_FLAGS} popd } diff --git a/concourse/scripts/test_gpdb.py b/concourse/scripts/test_gpdb.py index aa3c350d855ddbe3b482b0c8a52b56cab2cb1a26..dc5be1ba43cb56d34050411a7a930894750e2112 100755 --- a/concourse/scripts/test_gpdb.py +++ b/concourse/scripts/test_gpdb.py @@ -53,6 +53,8 @@ def configure(): "--with-perl", "--with-libxml", "--with-python", + # TODO: remove this flag after zstd is vendored in the installer for ubuntu + "--without-zstd", "--with-libs=/usr/local/gpdb/lib", "--with-includes=/usr/local/gpdb/include", "--prefix=/usr/local/gpdb"], env=p_env, cwd="gpdb_src") diff --git a/configure b/configure index 42313b6dc919b01f2a82976e0edaff98de6a8c13..ef7439e1cd25303a51cf79656dd84ec33f04ad75 100755 --- a/configure +++ b/configure @@ -1593,7 +1593,7 @@ Optional Packages: use system time zone data in DIR --without-zlib do not use Zlib --without-libbz2 do not use bzip2 - --with-zstd build with Zstandard support (requires zstd library) + --without-zstd do not build with Zstandard --without-rt do not use Realtime Library --without-libcurl do not use libcurl --with-apr-config=PATH path to apr-1-config utility @@ -8133,7 +8133,7 @@ if test "${with_zstd+set}" = set; then : esac else - with_zstd=no + with_zstd=yes fi diff --git a/configure.in b/configure.in index 015612acb84d28b69db413c34e6ef4424482b6ce..55d6d51d1c45cc51514826b7c8bb1c9439ce5759 100644 --- a/configure.in +++ b/configure.in @@ -1099,8 +1099,8 @@ AC_SUBST(with_libbz2) # # zstd # -PGAC_ARG_BOOL(with, zstd, no, - [build with Zstandard support (requires zstd library)]) +PGAC_ARG_BOOL(with, zstd, yes, + [do not build with Zstandard]) AC_SUBST(with_zstd) # diff --git a/gpAux/Makefile b/gpAux/Makefile index ff78639b478361e32d1da7f35c523eb2ab7ddc09..b78656f6b4d7cf5cfe5ea86abaca79cde1c7116f 100644 --- a/gpAux/Makefile +++ b/gpAux/Makefile @@ -159,7 +159,7 @@ endif APU_CONFIG=--with-apu-config=$(BLD_THIRDPARTY_BIN_DIR)/apu-1-config -aix7_ppc_64_CONFIGFLAGS=--disable-gpcloud --without-readline --without-libcurl --disable-orca --disable-pxf $(APR_CONFIG) +aix7_ppc_64_CONFIGFLAGS=--disable-gpcloud --without-readline --without-libcurl --disable-orca --disable-pxf --without-zstd $(APR_CONFIG) win32_CONFIGFLAGS=--with-gssapi --without-libcurl --disable-orca --disable-pxf --disable-gpcloud --without-libbz2 $(APR_CONFIG) sol10_x86_64_CONFIGFLAGS= --with-libxml $(APR_CONFIG) rhel6_x86_64_CONFIGFLAGS=--enable-tap-tests --enable-gpperfmon --with-gssapi --enable-mapreduce --enable-orafce ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) @@ -167,12 +167,11 @@ rhel7_x86_64_CONFIGFLAGS=--enable-tap-tests --enable-gpperfmon --with-gssapi --e #suse10_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) #suse11_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) #sles11_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) -suse10_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) -suse11_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml --enable-orafce $(APR_CONFIG) $(APU_CONFIG) -sles11_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml --enable-orafce $(APR_CONFIG) $(APU_CONFIG) +suse11_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml --enable-orafce --without-zstd $(APR_CONFIG) $(APU_CONFIG) +sles11_x86_64_CONFIGFLAGS=--enable-gpperfmon --with-gssapi ${ORCA_CONFIG} --with-libxml --enable-orafce --without-zstd $(APR_CONFIG) $(APU_CONFIG) linux_x86_64_CONFIGFLAGS=${ORCA_CONFIG} --with-libxml $(APR_CONFIG) osx106_x86_CONFIGFLAGS=${ORCA_CONFIG} --with-libxml $(APR_CONFIG) -ubuntu1604_amd64_CONFIGFLAGS=--enable-tap-tests --enable-gpperfmon --with-gssapi --enable-mapreduce ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) +ubuntu1604_amd64_CONFIGFLAGS=--enable-tap-tests --enable-gpperfmon --with-gssapi --enable-mapreduce --without-zstd ${ORCA_CONFIG} --with-libxml $(APR_CONFIG) $(APU_CONFIG) BLD_CONFIGFLAGS=$($(BLD_ARCH)_CONFIGFLAGS) diff --git a/src/backend/access/common/reloptions_gp.c b/src/backend/access/common/reloptions_gp.c index 5a06d047fde6ef28d2280fee74ff30aac6afdfbd..db35cd72043628782028f2d6be37c5eb91e93b3b 100644 --- a/src/backend/access/common/reloptions_gp.c +++ b/src/backend/access/common/reloptions_gp.c @@ -1221,7 +1221,7 @@ validateAppendOnlyRelOptions(bool ao, ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("Zstandard library is not supported by this build"), - errhint("Compile with --with-zstd to use Zstandard compression."))); + errhint("Compile without --without-zstd to use Zstandard compression."))); #endif if (complevel < 0 || complevel > 19) ereport(ERROR, diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 7cb2e4ad31d68303c4fb93e45043a46f4e849f35..f98b6c156d1de52343d7ff597a4970e770083cb0 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -106,9 +106,6 @@ /* Define to 1 if you have the header file. */ #undef HAVE_ATOMIC_H -/* Define to 1 if you have the `ASN1_STRING_get0_data' function. */ -#undef HAVE_ASN1_STRING_GET0_DATA - /* Define to 1 if you have the `BIO_meth_new' function. */ #undef HAVE_BIO_METH_NEW @@ -409,10 +406,6 @@ /* Define to 1 if you have the `zstd' library (-lzstd). */ #undef HAVE_LIBZSTD -/* Define to 1 if constants of type 'long long int' should have the suffix LL. - */ -#undef HAVE_LL_CONSTANTS - /* Define to 1 if the system has the type `locale_t'. */ #undef HAVE_LOCALE_T @@ -440,12 +433,12 @@ /* Define to 1 if the system has the type `MINIDUMP_TYPE'. */ #undef HAVE_MINIDUMP_TYPE -/* Define to 1 if you have the header file. */ -#undef HAVE_NAUCRATES_INIT_H - /* Define to 1 if you have the `mkdtemp' function. */ #undef HAVE_MKDTEMP +/* Define to 1 if you have the header file. */ +#undef HAVE_NAUCRATES_INIT_H + /* Define to 1 if you have the header file. */ #undef HAVE_NETINET_IN_H