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 2018/07/19 14:53:01 UTC

[1/4] impala git commit: IMPALA-7314: Doc generation should fail on error

Repository: impala
Updated Branches:
  refs/heads/master 8c284e771 -> 70e2d57fc


IMPALA-7314: Doc generation should fail on error

This patch updates the doc generation to fail when there is an error.
dita does not exit with non-zero exit code when there is an error. The
patch checks for [ERROR] in the dita output and fails if it encounters
one.

Testing:
- Manually tested by injecting failures

Change-Id: Ic452aa282a3f2a761e3b04a7460e0d86bc51d721
Reviewed-on: http://gerrit.cloudera.org:8080/10976
Reviewed-by: Alex Rodoni <ar...@cloudera.com>
Reviewed-by: Michael Brown <mi...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


Project: http://git-wip-us.apache.org/repos/asf/impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/impala/commit/20087027
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/20087027
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/20087027

Branch: refs/heads/master
Commit: 2008702759d16460803b6e190173f887cc6ef832
Parents: 8c284e7
Author: Fredy Wijaya <fw...@cloudera.com>
Authored: Tue Jul 17 21:34:46 2018 -0700
Committer: Impala Public Jenkins <im...@cloudera.com>
Committed: Wed Jul 18 23:32:07 2018 +0000

----------------------------------------------------------------------
 docs/.gitignore   |  1 +
 docs/Makefile     |  4 ++--
 docs/build-doc.sh | 36 ++++++++++++++++++++++++++++++++++++
 3 files changed, 39 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/impala/blob/20087027/docs/.gitignore
----------------------------------------------------------------------
diff --git a/docs/.gitignore b/docs/.gitignore
index b6e5611..cf8132f 100644
--- a/docs/.gitignore
+++ b/docs/.gitignore
@@ -1,2 +1,3 @@
 !Makefile
 build/
+*.log

http://git-wip-us.apache.org/repos/asf/impala/blob/20087027/docs/Makefile
----------------------------------------------------------------------
diff --git a/docs/Makefile b/docs/Makefile
index 99a0e09..fc2f8e9 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -26,7 +26,7 @@ pdf: build/impala.pdf
 ALL_DEPS=Makefile impala.ditamap shared/*.xml images/* topics/*.xml
 
 build/html/index.html: impala_html.ditaval ${ALL_DEPS}
-	dita -i impala.ditamap -f html5 -o $(dir $@) -filter $<
+	./build-doc.sh html5 $(dir $@) $< gen-html.log
 
 build/impala.pdf: impala_pdf.ditaval ${ALL_DEPS}
-	dita -i impala.ditamap -f pdf -o $(dir $@) -filter $<
+	./build-doc.sh pdf $(dir $@) $< gen-pdf.log

http://git-wip-us.apache.org/repos/asf/impala/blob/20087027/docs/build-doc.sh
----------------------------------------------------------------------
diff --git a/docs/build-doc.sh b/docs/build-doc.sh
new file mode 100755
index 0000000..6153e1d
--- /dev/null
+++ b/docs/build-doc.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+set -euo pipefail
+
+function usage() {
+  echo "$0 <file_format> <output_file> <filter_file> <log_file>"
+  exit 1
+}
+
+[[ $# -eq 4 ]] || usage
+
+FILE_FORMAT=$1
+OUTPUT_FILE=$2
+FILTER_FILE=$3
+LOG_FILE=$4
+
+dita -i impala.ditamap -f ${FILE_FORMAT} -o ${OUTPUT_FILE} -filter ${FILTER_FILE} 2>&1 \
+    | tee ${LOG_FILE}
+[[ -z $(grep "\[ERROR\]" ${LOG_FILE}) ]] || exit 1


[2/4] impala git commit: IMPALA-7252: Backport rate limiting of fadvise calls into toolchain glog

Posted by ta...@apache.org.
IMPALA-7252: Backport rate limiting of fadvise calls into toolchain glog

This patch bumps glog version to 0.3.4-p3 to include the patch limiting
fadvise calls.

Change-Id: I41fd855fbf0e9ec58845ac0d2eb96a87b0172152
Reviewed-on: http://gerrit.cloudera.org:8080/10965
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


Project: http://git-wip-us.apache.org/repos/asf/impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/impala/commit/940d536f
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/940d536f
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/940d536f

Branch: refs/heads/master
Commit: 940d536f21160cd93a900aa70c003b6d1cb1fac8
Parents: 2008702
Author: Tianyi Wang <tw...@cloudera.com>
Authored: Tue Jul 17 15:18:05 2018 -0700
Committer: Impala Public Jenkins <im...@cloudera.com>
Committed: Thu Jul 19 04:34:58 2018 +0000

----------------------------------------------------------------------
 bin/impala-config.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/impala/blob/940d536f/bin/impala-config.sh
----------------------------------------------------------------------
diff --git a/bin/impala-config.sh b/bin/impala-config.sh
index 9628fb7..31b554c 100755
--- a/bin/impala-config.sh
+++ b/bin/impala-config.sh
@@ -68,7 +68,7 @@ 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=146-f2d5380be6
+export IMPALA_TOOLCHAIN_BUILD_ID=155-3c4a3251df
 # Versions of toolchain dependencies.
 # -----------------------------------
 export IMPALA_AVRO_VERSION=1.7.4-p4
@@ -95,7 +95,7 @@ export IMPALA_GCC_VERSION=4.9.2
 unset IMPALA_GCC_URL
 export IMPALA_GFLAGS_VERSION=2.2.0-p1
 unset IMPALA_GFLAGS_URL
-export IMPALA_GLOG_VERSION=0.3.4-p2
+export IMPALA_GLOG_VERSION=0.3.4-p3
 unset IMPALA_GLOG_URL
 export IMPALA_GPERFTOOLS_VERSION=2.5
 unset IMPALA_GPERFTOOLS_URL


[3/4] impala git commit: IMPALA-7298: Stop passing IP address as hostname in Kerberos principal

Posted by ta...@apache.org.
IMPALA-7298: Stop passing IP address as hostname in Kerberos principal

Previously, we pass the resolved IP address of a KRPC destination
host as the hostname when creating a proxy for making KRPC calls.
This may lead to connection negotiation failure in KRPC when Kerberos
is enabled. In particular, if reversed DNS isn't enabled in Kerberos,
KDC may fail to look up the principal of the destination host if the
principal includes the hostname instead of resolved IP address.

This change fixes the problem above by passing the actual hostname
of the destination host when calling RpcMgr::GetProxy().

rpc-mgr-kerberized-test.cc is also updated to use hostname
instead of the resolved IP address as Kerberos principal.

Change-Id: I3e3e978746cf03766eee151835aad5877d9ed63e
Reviewed-on: http://gerrit.cloudera.org:8080/10980
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


Project: http://git-wip-us.apache.org/repos/asf/impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/impala/commit/c7d2c2ec
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/c7d2c2ec
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/c7d2c2ec

Branch: refs/heads/master
Commit: c7d2c2ec73a5e2073de22e10742faa0553c5018d
Parents: 940d536
Author: Michael Ho <kw...@cloudera.com>
Authored: Tue Jul 17 16:46:55 2018 -0700
Committer: Impala Public Jenkins <im...@cloudera.com>
Committed: Thu Jul 19 05:00:10 2018 +0000

----------------------------------------------------------------------
 be/src/rpc/rpc-mgr-kerberized-test.cc      |  2 +-
 be/src/rpc/rpc-mgr-test-base.h             |  6 ++++--
 be/src/rpc/rpc-mgr-test.cc                 |  5 +++--
 be/src/rpc/rpc-mgr.h                       | 10 +++++-----
 be/src/rpc/rpc-mgr.inline.h                |  5 +++--
 be/src/runtime/data-stream-sender.cc       |  2 +-
 be/src/runtime/data-stream-test.cc         |  6 +++---
 be/src/runtime/krpc-data-stream-sender.cc  | 14 ++++++++------
 be/src/scheduling/scheduler.cc             |  4 ++--
 common/thrift/ImpalaInternalService.thrift |  6 +++---
 10 files changed, 33 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/rpc/rpc-mgr-kerberized-test.cc
----------------------------------------------------------------------
diff --git a/be/src/rpc/rpc-mgr-kerberized-test.cc b/be/src/rpc/rpc-mgr-kerberized-test.cc
index 6fdb1de..0f1f3bb 100644
--- a/be/src/rpc/rpc-mgr-kerberized-test.cc
+++ b/be/src/rpc/rpc-mgr-kerberized-test.cc
@@ -89,7 +89,7 @@ int main(int argc, char** argv) {
   impala::IpAddr ip;
   impala::Status status = impala::HostnameToIpAddr(FLAGS_hostname, &ip);
   DCHECK(status.ok());
-  kdc_principal = Substitute("impala-test/$0", ip);
+  kdc_principal = Substitute("impala-test/$0", FLAGS_hostname);
   kdc_realm = "KRBTEST.COM";
 
   int port = impala::FindUnusedEphemeralPort();

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/rpc/rpc-mgr-test-base.h
----------------------------------------------------------------------
diff --git a/be/src/rpc/rpc-mgr-test-base.h b/be/src/rpc/rpc-mgr-test-base.h
index bbc92a0..258bd4b 100644
--- a/be/src/rpc/rpc-mgr-test-base.h
+++ b/be/src/rpc/rpc-mgr-test-base.h
@@ -246,10 +246,12 @@ Status RunMultipleServicesTestTemplate(RpcMgrTestBase<T>* test_base,
   RETURN_IF_ERROR(rpc_mgr->StartServices(krpc_address));
 
   unique_ptr<PingServiceProxy> ping_proxy;
-  RETURN_IF_ERROR(rpc_mgr->GetProxy<PingServiceProxy>(krpc_address, &ping_proxy));
+  RETURN_IF_ERROR(rpc_mgr->GetProxy<PingServiceProxy>(krpc_address, FLAGS_hostname,
+      &ping_proxy));
 
   unique_ptr<ScanMemServiceProxy> scan_mem_proxy;
-  RETURN_IF_ERROR(rpc_mgr->GetProxy<ScanMemServiceProxy>(krpc_address, &scan_mem_proxy));
+  RETURN_IF_ERROR(rpc_mgr->GetProxy<ScanMemServiceProxy>(krpc_address, FLAGS_hostname,
+      &scan_mem_proxy));
 
   RpcController controller;
   srand(0);

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/rpc/rpc-mgr-test.cc
----------------------------------------------------------------------
diff --git a/be/src/rpc/rpc-mgr-test.cc b/be/src/rpc/rpc-mgr-test.cc
index 1e11099..6a774bd 100644
--- a/be/src/rpc/rpc-mgr-test.cc
+++ b/be/src/rpc/rpc-mgr-test.cc
@@ -191,7 +191,7 @@ TEST_F(RpcMgrTest, SlowCallback) {
   ASSERT_OK(rpc_mgr_.StartServices(krpc_address_));
 
   unique_ptr<PingServiceProxy> proxy;
-  ASSERT_OK(rpc_mgr_.GetProxy<PingServiceProxy>(krpc_address_, &proxy));
+  ASSERT_OK(rpc_mgr_.GetProxy<PingServiceProxy>(krpc_address_, FLAGS_hostname, &proxy));
 
   PingRequestPB request;
   PingResponsePB response;
@@ -211,7 +211,8 @@ TEST_F(RpcMgrTest, AsyncCall) {
       static_cast<ScanMemServiceImpl*>(scan_mem_impl)->mem_tracker()));
 
   unique_ptr<ScanMemServiceProxy> scan_mem_proxy;
-  ASSERT_OK(rpc_mgr_.GetProxy<ScanMemServiceProxy>(krpc_address_, &scan_mem_proxy));
+  ASSERT_OK(rpc_mgr_.GetProxy<ScanMemServiceProxy>(krpc_address_, FLAGS_hostname,
+      &scan_mem_proxy));
 
   FLAGS_num_acceptor_threads = 2;
   FLAGS_num_reactor_threads = 10;

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/rpc/rpc-mgr.h
----------------------------------------------------------------------
diff --git a/be/src/rpc/rpc-mgr.h b/be/src/rpc/rpc-mgr.h
index c7107d2..c25f754 100644
--- a/be/src/rpc/rpc-mgr.h
+++ b/be/src/rpc/rpc-mgr.h
@@ -133,12 +133,12 @@ class RpcMgr {
       kudu::rpc::GeneratedServiceIf* service_ptr, MemTracker* service_mem_tracker)
       WARN_UNUSED_RESULT;
 
-  /// Creates a new proxy for a remote service of type P at location 'address', and places
-  /// it in 'proxy'. 'P' must descend from kudu::rpc::ServiceIf. Note that 'address' must
-  /// be a resolved IP address.
+  /// Creates a new proxy for a remote service of type P at location 'address' with
+  /// hostname 'hostname' and places it in 'proxy'. 'P' must descend from
+  /// kudu::rpc::ServiceIf. Note that 'address' must be a resolved IP address.
   template <typename P>
-  Status GetProxy(const TNetworkAddress& address, std::unique_ptr<P>* proxy)
-      WARN_UNUSED_RESULT;
+  Status GetProxy(const TNetworkAddress& address, const std::string& hostname,
+      std::unique_ptr<P>* proxy) WARN_UNUSED_RESULT;
 
   /// Shut down all previously registered services. All service pools are shut down.
   /// All acceptor and reactor threads within the messenger are also shut down.

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/rpc/rpc-mgr.inline.h
----------------------------------------------------------------------
diff --git a/be/src/rpc/rpc-mgr.inline.h b/be/src/rpc/rpc-mgr.inline.h
index 474ac45..934b28b 100644
--- a/be/src/rpc/rpc-mgr.inline.h
+++ b/be/src/rpc/rpc-mgr.inline.h
@@ -30,13 +30,14 @@ namespace impala {
 
 /// Always inline to avoid having to provide a definition for each use type P.
 template <typename P>
-Status RpcMgr::GetProxy(const TNetworkAddress& address, std::unique_ptr<P>* proxy) {
+Status RpcMgr::GetProxy(const TNetworkAddress& address, const std::string& hostname,
+    std::unique_ptr<P>* proxy) {
   DCHECK(proxy != nullptr);
   DCHECK(is_inited()) << "Must call Init() before GetProxy()";
   DCHECK(IsResolvedAddress(address));
   kudu::Sockaddr sockaddr;
   RETURN_IF_ERROR(TNetworkAddressToSockaddr(address, &sockaddr));
-  proxy->reset(new P(messenger_, sockaddr, address.hostname));
+  proxy->reset(new P(messenger_, sockaddr, hostname));
   return Status::OK();
 }
 

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/runtime/data-stream-sender.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/data-stream-sender.cc b/be/src/runtime/data-stream-sender.cc
index a37c3c1..ad500e9 100644
--- a/be/src/runtime/data-stream-sender.cc
+++ b/be/src/runtime/data-stream-sender.cc
@@ -353,7 +353,7 @@ DataStreamSender::DataStreamSender(int sender_id, const RowDescriptor* row_desc,
   // TODO: use something like google3's linked_ptr here (scoped_ptr isn't copyable)
   for (int i = 0; i < destinations.size(); ++i) {
     channels_.push_back(
-        new Channel(this, row_desc, destinations[i].server,
+        new Channel(this, row_desc, destinations[i].thrift_backend,
             destinations[i].fragment_instance_id, sink.dest_node_id,
             per_channel_buffer_size));
   }

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/runtime/data-stream-test.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/data-stream-test.cc b/be/src/runtime/data-stream-test.cc
index 8851d1a..9f866ba 100644
--- a/be/src/runtime/data-stream-test.cc
+++ b/be/src/runtime/data-stream-test.cc
@@ -358,10 +358,10 @@ class DataStreamTest : public DataStreamTestBase<testing::TestWithParam<KrpcSwit
     dest_.push_back(TPlanFragmentDestination());
     TPlanFragmentDestination& dest = dest_.back();
     dest.fragment_instance_id = next_instance_id_;
-    dest.server.hostname = "127.0.0.1";
-    dest.server.port = FLAGS_port;
+    dest.thrift_backend.hostname = "localhost";
+    dest.thrift_backend.port = FLAGS_port;
     if (GetParam() == USE_KRPC) {
-      dest.__set_krpc_server(krpc_address_);
+      dest.__set_krpc_backend(krpc_address_);
     }
     *instance_id = next_instance_id_;
     ++next_instance_id_.lo;

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/runtime/krpc-data-stream-sender.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/krpc-data-stream-sender.cc b/be/src/runtime/krpc-data-stream-sender.cc
index b362758..e6cea1f 100644
--- a/be/src/runtime/krpc-data-stream-sender.cc
+++ b/be/src/runtime/krpc-data-stream-sender.cc
@@ -105,10 +105,11 @@ class KrpcDataStreamSender::Channel : public CacheLineAligned {
   // data is getting accumulated before being sent; it only applies when data is added via
   // AddRow() and not sent directly via SendBatch().
   Channel(KrpcDataStreamSender* parent, const RowDescriptor* row_desc,
-      const TNetworkAddress& destination, const TUniqueId& fragment_instance_id,
-      PlanNodeId dest_node_id, int buffer_size)
+      const std::string& hostname, const TNetworkAddress& destination,
+      const TUniqueId& fragment_instance_id, PlanNodeId dest_node_id, int buffer_size)
     : parent_(parent),
       row_desc_(row_desc),
+      hostname_(hostname),
       address_(destination),
       fragment_instance_id_(fragment_instance_id),
       dest_node_id_(dest_node_id) {
@@ -160,6 +161,7 @@ class KrpcDataStreamSender::Channel : public CacheLineAligned {
   const RowDescriptor* row_desc_;
 
   // The triplet of IP-address:port/finst-id/node-id uniquely identifies the receiver.
+  const std::string hostname_;
   const TNetworkAddress address_;
   const TUniqueId fragment_instance_id_;
   const PlanNodeId dest_node_id_;
@@ -305,7 +307,7 @@ Status KrpcDataStreamSender::Channel::Init(RuntimeState* state) {
 
   // Create a DataStreamService proxy to the destination.
   RpcMgr* rpc_mgr = ExecEnv::GetInstance()->rpc_mgr();
-  RETURN_IF_ERROR(rpc_mgr->GetProxy(address_, &proxy_));
+  RETURN_IF_ERROR(rpc_mgr->GetProxy(address_, hostname_, &proxy_));
   return Status::OK();
 }
 
@@ -593,9 +595,9 @@ KrpcDataStreamSender::KrpcDataStreamSender(int sender_id, const RowDescriptor* r
 
   for (int i = 0; i < destinations.size(); ++i) {
     channels_.push_back(
-        new Channel(this, row_desc, destinations[i].krpc_server,
-            destinations[i].fragment_instance_id, sink.dest_node_id,
-            per_channel_buffer_size));
+        new Channel(this, row_desc, destinations[i].thrift_backend.hostname,
+            destinations[i].krpc_backend, destinations[i].fragment_instance_id,
+            sink.dest_node_id, per_channel_buffer_size));
   }
 
   if (partition_type_ == TPartitionType::UNPARTITIONED ||

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/be/src/scheduling/scheduler.cc
----------------------------------------------------------------------
diff --git a/be/src/scheduling/scheduler.cc b/be/src/scheduling/scheduler.cc
index 7c0af6f..2baffbb 100644
--- a/be/src/scheduling/scheduler.cc
+++ b/be/src/scheduling/scheduler.cc
@@ -345,12 +345,12 @@ void Scheduler::ComputeFragmentExecParams(
         TPlanFragmentDestination& dest = src_params->destinations[i];
         dest.__set_fragment_instance_id(dest_params->instance_exec_params[i].instance_id);
         const TNetworkAddress& host = dest_params->instance_exec_params[i].host;
-        dest.__set_server(host);
+        dest.__set_thrift_backend(host);
         if (FLAGS_use_krpc) {
           const TBackendDescriptor& desc = LookUpBackendDesc(executor_config, host);
           DCHECK(desc.__isset.krpc_address);
           DCHECK(IsResolvedAddress(desc.krpc_address));
-          dest.__set_krpc_server(desc.krpc_address);
+          dest.__set_krpc_backend(desc.krpc_address);
         }
       }
 

http://git-wip-us.apache.org/repos/asf/impala/blob/c7d2c2ec/common/thrift/ImpalaInternalService.thrift
----------------------------------------------------------------------
diff --git a/common/thrift/ImpalaInternalService.thrift b/common/thrift/ImpalaInternalService.thrift
index 120aebc..4797eba 100644
--- a/common/thrift/ImpalaInternalService.thrift
+++ b/common/thrift/ImpalaInternalService.thrift
@@ -431,11 +431,11 @@ struct TPlanFragmentDestination {
   // the globally unique fragment instance id
   1: required Types.TUniqueId fragment_instance_id
 
-  // IP address + port of the thrift based ImpalaInteralService on the destination
-  2: required Types.TNetworkAddress server
+  // hostname + port of the Thrift based ImpalaInteralService on the destination
+  2: required Types.TNetworkAddress thrift_backend
 
   // IP address + port of the KRPC based ImpalaInternalService on the destination
-  3: optional Types.TNetworkAddress krpc_server
+  3: optional Types.TNetworkAddress krpc_backend
 }
 
 // Context to collect information, which is shared among all instances of that plan


[4/4] impala git commit: IMPALA-7315: fix test_update_with_clear_entries_flag race

Posted by ta...@apache.org.
IMPALA-7315: fix test_update_with_clear_entries_flag race

We need to wait for the subscriber to process the second update in order
to guarantee that the first update for that subscriber has been applied.
Otherwise there is a race window where the second subscriber may see the
older version of the statestore topic.

Change-Id: I2be2b61b6deb0228fbc5a242e43076beb8871454
Reviewed-on: http://gerrit.cloudera.org:8080/10986
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


Project: http://git-wip-us.apache.org/repos/asf/impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/impala/commit/70e2d57f
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/70e2d57f
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/70e2d57f

Branch: refs/heads/master
Commit: 70e2d57fc06499d3eb7c278c28daf51f782d93b3
Parents: c7d2c2e
Author: Tim Armstrong <ta...@cloudera.com>
Authored: Wed Jul 18 14:36:37 2018 -0700
Committer: Impala Public Jenkins <im...@cloudera.com>
Committed: Thu Jul 19 09:49:26 2018 +0000

----------------------------------------------------------------------
 tests/statestore/test_statestore.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/impala/blob/70e2d57f/tests/statestore/test_statestore.py
----------------------------------------------------------------------
diff --git a/tests/statestore/test_statestore.py b/tests/statestore/test_statestore.py
index 698a2a6..682a306 100644
--- a/tests/statestore/test_statestore.py
+++ b/tests/statestore/test_statestore.py
@@ -558,7 +558,7 @@ class TestStatestore():
         .wait_for_failure()
         .start()
         .register(topics=reg)
-        .wait_for_update(topic_name, 1)
+        .wait_for_update(topic_name, 2)
     )
 
     sub2 = StatestoreSubscriber(update_cb=check_entries)