You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by ta...@apache.org on 2017/03/08 22:32:17 UTC
[1/2] incubator-impala git commit: IMPALA-5034: Update Breakpad to
newer version
Repository: incubator-impala
Updated Branches:
refs/heads/master ec469347f -> 3b7ceceed
IMPALA-5034: Update Breakpad to newer version
This will give us better support for DWARF version 4, support for
redaction of sensitive data, and a multitude of bug fixes.
The Breakpad project does not do releases, so we update to a somewhat
arbitrary commit:
commit 88e5b2c8806bac3f2c80d2fe80094be5bd371601
Author: Scott Graham <sc...@chromium.org>
Date: Tue Feb 28 11:14:04 2017 -0800
Change-Id: I77eb54c0a9a3ad5d59994b22ef47da5817a7e858
Reviewed-on: http://gerrit.cloudera.org:8080/6273
Reviewed-by: Tim Armstrong <ta...@cloudera.com>
Tested-by: Impala Public Jenkins
Project: http://git-wip-us.apache.org/repos/asf/incubator-impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-impala/commit/408d0aec
Tree: http://git-wip-us.apache.org/repos/asf/incubator-impala/tree/408d0aec
Diff: http://git-wip-us.apache.org/repos/asf/incubator-impala/diff/408d0aec
Branch: refs/heads/master
Commit: 408d0aec336da826304ca5e144ce3655a5967f56
Parents: ec46934
Author: Lars Volker <lv...@cloudera.com>
Authored: Mon Mar 6 13:16:48 2017 -0800
Committer: Impala Public Jenkins <im...@gerrit.cloudera.org>
Committed: Wed Mar 8 21:33:15 2017 +0000
----------------------------------------------------------------------
bin/impala-config.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-impala/blob/408d0aec/bin/impala-config.sh
----------------------------------------------------------------------
diff --git a/bin/impala-config.sh b/bin/impala-config.sh
index ff83b7f..cee3d53 100755
--- a/bin/impala-config.sh
+++ b/bin/impala-config.sh
@@ -72,14 +72,14 @@ fi
# moving to a different build of the toolchain, e.g. when a version is bumped or a
# compile option is changed. The build id can be found in the output of the toolchain
# build jobs, it is constructed from the build number and toolchain git hash prefix.
-export IMPALA_TOOLCHAIN_BUILD_ID=349-1b15a6c8f4
+export IMPALA_TOOLCHAIN_BUILD_ID=360-04f75441e7
# Versions of toolchain dependencies.
# -----------------------------------
export IMPALA_AVRO_VERSION=1.7.4-p4
export IMPALA_BINUTILS_VERSION=2.26-p1
export IMPALA_BOOST_VERSION=1.57.0-p1
-export IMPALA_BREAKPAD_VERSION=20150612-p1
+export IMPALA_BREAKPAD_VERSION=88e5b2c8806bac3f2c80d2fe80094be5bd371601
export IMPALA_BZIP2_VERSION=1.0.6-p2
export IMPALA_CMAKE_VERSION=3.2.3-p1
export IMPALA_CRCUTIL_VERSION=440ba7babeff77ffad992df3a10c767f184e946e
[2/2] incubator-impala git commit: IMPALA-5028: Lock table in
/catalog_objects endpoint.
Posted by ta...@apache.org.
IMPALA-5028: Lock table in /catalog_objects endpoint.
There was a missing lock acquisition before
Table.toThrift() in the code used for implementing
the /catalog_objects endpoint in the WebUI.
Testing:
- Added a regression test in test_web_pages.py
Change-Id: I3ad4ce286b8cc169f29b8ddfa215f8949b1c11ff
Reviewed-on: http://gerrit.cloudera.org:8080/6296
Reviewed-by: Alex Behm <al...@cloudera.com>
Tested-by: Impala Public Jenkins
Project: http://git-wip-us.apache.org/repos/asf/incubator-impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-impala/commit/3b7cecee
Tree: http://git-wip-us.apache.org/repos/asf/incubator-impala/tree/3b7cecee
Diff: http://git-wip-us.apache.org/repos/asf/incubator-impala/diff/3b7cecee
Branch: refs/heads/master
Commit: 3b7ceceed29f2f34539a0def4ddb71b34e74d2b7
Parents: 408d0ae
Author: Alex Behm <al...@cloudera.com>
Authored: Tue Mar 7 10:34:37 2017 -0800
Committer: Impala Public Jenkins <im...@gerrit.cloudera.org>
Committed: Wed Mar 8 22:09:53 2017 +0000
----------------------------------------------------------------------
.../java/org/apache/impala/catalog/Catalog.java | 11 ++++++---
tests/webserver/test_web_pages.py | 24 ++++++++++++++++++++
2 files changed, 32 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-impala/blob/3b7cecee/fe/src/main/java/org/apache/impala/catalog/Catalog.java
----------------------------------------------------------------------
diff --git a/fe/src/main/java/org/apache/impala/catalog/Catalog.java b/fe/src/main/java/org/apache/impala/catalog/Catalog.java
index 5a3fc61..994aa37 100644
--- a/fe/src/main/java/org/apache/impala/catalog/Catalog.java
+++ b/fe/src/main/java/org/apache/impala/catalog/Catalog.java
@@ -449,9 +449,14 @@ public abstract class Catalog {
throw new CatalogException("Table not found: " +
objectDesc.getTable().getTbl_name());
}
- result.setType(table.getCatalogObjectType());
- result.setCatalog_version(table.getCatalogVersion());
- result.setTable(table.toThrift());
+ table.getLock().lock();
+ try {
+ result.setType(table.getCatalogObjectType());
+ result.setCatalog_version(table.getCatalogVersion());
+ result.setTable(table.toThrift());
+ } finally {
+ table.getLock().unlock();
+ }
break;
}
case FUNCTION: {
http://git-wip-us.apache.org/repos/asf/incubator-impala/blob/3b7cecee/tests/webserver/test_web_pages.py
----------------------------------------------------------------------
diff --git a/tests/webserver/test_web_pages.py b/tests/webserver/test_web_pages.py
index 4604e22..4a2d872 100644
--- a/tests/webserver/test_web_pages.py
+++ b/tests/webserver/test_web_pages.py
@@ -26,6 +26,8 @@ class TestWebPage(ImpalaTestSuite):
RESET_JAVA_LOGLEVEL_URL = "http://localhost:{0}/reset_java_loglevel"
SET_GLOG_LOGLEVEL_URL = "http://localhost:{0}/set_glog_level"
RESET_GLOG_LOGLEVEL_URL = "http://localhost:{0}/reset_glog_level"
+ CATALOG_URL = "http://localhost:{0}/catalog"
+ CATALOG_OBJECT_URL = "http://localhost:{0}/catalog_object"
# log4j changes do not apply to the statestore since it doesn't
# have an embedded JVM. So we make two sets of ports to test the
# log level endpoints, one without the statestore port and the
@@ -130,3 +132,25 @@ class TestWebPage(ImpalaTestSuite):
# Try a non-existent endpoint on log_level URL.
bad_loglevel_url = self.SET_GLOG_LOGLEVEL_URL + "?badurl=foo"
self.get_and_check_status(bad_loglevel_url, without_ss=False)
+
+ def test_catalog(self):
+ """Tests the /catalog and /catalog_object endpoints."""
+ self.get_and_check_status(self.CATALOG_URL, "functional", without_ss=True)
+ self.get_and_check_status(self.CATALOG_URL, "alltypes", without_ss=True)
+ # IMPALA-5028: Test toThrift() of a partitioned table via the WebUI code path.
+ self.__test_catalog_object("functional", "alltypes")
+ self.__test_catalog_object("functional_parquet", "alltypes")
+ self.__test_catalog_object("functional", "alltypesnopart")
+ self.__test_catalog_object("functional_kudu", "alltypes")
+
+ def __test_catalog_object(self, db_name, tbl_name):
+ """Tests the /catalog_object endpoint for the given db/table. Runs
+ against an unloaded as well as a loaded table."""
+ self.client.execute("invalidate metadata %s.%s" % (db_name, tbl_name))
+ self.get_and_check_status(self.CATALOG_OBJECT_URL +
+ "?object_type=TABLE&object_name=%s.%s" % (db_name, tbl_name), tbl_name,
+ without_ss=True)
+ self.client.execute("select count(*) from %s.%s" % (db_name, tbl_name))
+ self.get_and_check_status(self.CATALOG_OBJECT_URL +
+ "?object_type=TABLE&object_name=%s.%s" % (db_name, tbl_name), tbl_name,
+ without_ss=True)