mirror of
https://github.com/apache/impala.git
synced 2025-12-19 18:12:08 -05:00
IMPALA-7499: build against CDH Kudu
This patch transitions from pulling in Kudu (libkudu_client.so and the minicluster tarballs) from the toolchain to instead pull Kudu in with the other CDH components. For OSes where the CDH binaries are not provided but the toolchain binaries are (only Ubuntu 14), we set USE_CDH_KUDU to false to continue to download the toolchain binaries. We also continue to use the toolchain binaries to build the client stub for OSes where KUDU_IS_SUPPORTED is false. This patch also fixes an issue in bootstrap_toolchain.py where we were using the wrong g++ to compile the Kudu stub. Testing: - Verified building and running Impala works as expected for supported combinations of KUDU_IS_SUPPORTED/USE_CDH_KUDU Change-Id: If6e1048438b6d09a1b38c58371d6212bb6dcc06c Reviewed-on: http://gerrit.cloudera.org:8080/11363 Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
This commit is contained in:
committed by
Impala Public Jenkins
parent
ab6bd74ff7
commit
85f3bb0178
@@ -273,12 +273,9 @@ def install_kudu_client_if_possible():
|
||||
if os.environ["KUDU_IS_SUPPORTED"] != "true":
|
||||
LOG.debug("Skipping Kudu: Kudu is not supported")
|
||||
return
|
||||
if not have_toolchain():
|
||||
LOG.debug("Skipping Kudu: IMPALA_TOOLCHAIN not set")
|
||||
return
|
||||
toolchain_kudu_dir = toolchain_pkg_dir("kudu")
|
||||
if not os.path.exists(toolchain_kudu_dir):
|
||||
LOG.debug("Skipping Kudu: %s doesn't exist" % toolchain_kudu_dir)
|
||||
kudu_base_dir = os.environ["IMPALA_KUDU_HOME"]
|
||||
if not os.path.exists(kudu_base_dir):
|
||||
LOG.debug("Skipping Kudu: %s doesn't exist" % kudu_base_dir)
|
||||
return
|
||||
|
||||
LOG.info("Installing Kudu into the virtualenv")
|
||||
@@ -316,8 +313,7 @@ def find_kudu_client_install_dir():
|
||||
# If the toolchain appears to have been setup already, then the Kudu client is
|
||||
# required to exist. It's possible that the toolchain won't be setup yet though
|
||||
# since the toolchain bootstrap script depends on the virtualenv.
|
||||
kudu_base_dir = os.path.join(os.environ["IMPALA_TOOLCHAIN"],
|
||||
"kudu-%s" % os.environ["IMPALA_KUDU_VERSION"])
|
||||
kudu_base_dir = os.environ["IMPALA_KUDU_HOME"]
|
||||
install_dir = os.path.join(kudu_base_dir, "debug")
|
||||
if os.path.exists(kudu_base_dir):
|
||||
error_if_kudu_client_not_found(install_dir)
|
||||
|
||||
Reference in New Issue
Block a user