You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by ad...@apache.org on 2019/12/05 00:16:11 UTC

[kudu] branch master updated (c29d144 -> 89ce529)

This is an automated email from the ASF dual-hosted git repository.

adar pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git.


    from c29d144  log: remove SegmentAllocator functors
     new ac6198f  char_util-test: disable TSAN instrumentation in stress tests
     new 89ce529  KUDU-2703: deflake ITClientStress timeouts

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../src/test/java/org/apache/kudu/client/ITClientStress.java         | 4 ++--
 src/kudu/util/char_util-test.cc                                      | 5 +++++
 src/kudu/util/char_util.cc                                           | 5 +++--
 3 files changed, 10 insertions(+), 4 deletions(-)


[kudu] 02/02: KUDU-2703: deflake ITClientStress timeouts

Posted by ad...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

adar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git

commit 89ce529e945731c48445db4a6f8af11f9f905aab
Author: Adar Dembo <ad...@cloudera.com>
AuthorDate: Wed Dec 4 14:43:47 2019 -0800

    KUDU-2703: deflake ITClientStress timeouts
    
    These tests have been timing out in TSAN fairly consistently. I see no
    reason why we can't increase the timeouts.
    
    org.junit.runners.model.TestTimedOutException: test timed out after 60000 milliseconds
    	at java.lang.Object.wait(Native Method)
    	at java.lang.Object.wait(Object.java:502)
    	at com.stumbleupon.async.Deferred.doJoin(Deferred.java:1136)
    	at com.stumbleupon.async.Deferred.join(Deferred.java:1019)
    	at org.apache.kudu.client.KuduSession.apply(KuduSession.java:81)
    	at org.apache.kudu.client.ITClientStress$3$1.call(ITClientStress.java:164)
    	at org.apache.kudu.client.ITClientStress$3$1.call(ITClientStress.java:151)
    	at org.apache.kudu.client.ITClientStress$1.run(ITClientStress.java:81)
    	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    	at java.util.concurrent.ThreadPoolExecutor$CallerRunsPolicy.rejectedExecution(ThreadPoolExecutor.java:2038)
    	at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:830)
    	at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1379)
    	at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
    	at org.apache.kudu.client.ITClientStress.runTasks(ITClientStress.java:87)
    	at org.apache.kudu.client.ITClientStress.testMultipleSessions(ITClientStress.java:148)
    
    Change-Id: I3f5f1713be093c3116743c4a72f30f2f6262974e
    Reviewed-on: http://gerrit.cloudera.org:8080/14838
    Reviewed-by: Alexey Serbin <as...@cloudera.com>
    Tested-by: Kudu Jenkins
---
 .../src/test/java/org/apache/kudu/client/ITClientStress.java          | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/java/kudu-client/src/test/java/org/apache/kudu/client/ITClientStress.java b/java/kudu-client/src/test/java/org/apache/kudu/client/ITClientStress.java
index 0f4b288..bf4962e 100644
--- a/java/kudu-client/src/test/java/org/apache/kudu/client/ITClientStress.java
+++ b/java/kudu-client/src/test/java/org/apache/kudu/client/ITClientStress.java
@@ -106,7 +106,7 @@ public class ITClientStress {
    * Impala 2.8 front-end under a high-concurrency workload. Each query
    * starts a new client, fetches scan tokens, and closes the client.
    */
-  @Test(timeout = 60000)
+  @Test(timeout = 300000)
   public void testManyShortClientsGeneratingScanTokens() throws Exception {
     final String TABLE_NAME = "testManyClients";
     final int SECONDS_TO_RUN = 10;
@@ -137,7 +137,7 @@ public class ITClientStress {
    * Stress test which performs upserts from many sessions on different threads
    * sharing the same KuduClient and KuduTable instance.
    */
-  @Test(timeout = 60000)
+  @Test(timeout = 300000)
   public void testMultipleSessions() throws Exception {
     final String TABLE_NAME = "testMultipleSessions";
     final int SECONDS_TO_RUN = 10;


[kudu] 01/02: char_util-test: disable TSAN instrumentation in stress tests

Posted by ad...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

adar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git

commit ac6198f5055e62979f79660a81443844262c7d2e
Author: Adar Dembo <ad...@cloudera.com>
AuthorDate: Wed Dec 4 12:36:58 2019 -0800

    char_util-test: disable TSAN instrumentation in stress tests
    
    The UTF8 stress test was sometimes timing out in TSAN precommit.
    
    Change-Id: Ibaafba2e73cdfeec3ca3f7091cedc316238600b2
    Reviewed-on: http://gerrit.cloudera.org:8080/14835
    Reviewed-by: Andrew Wong <aw...@cloudera.com>
    Tested-by: Adar Dembo <ad...@cloudera.com>
---
 src/kudu/util/char_util-test.cc | 5 +++++
 src/kudu/util/char_util.cc      | 5 +++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/kudu/util/char_util-test.cc b/src/kudu/util/char_util-test.cc
index eb41355..b65e203 100644
--- a/src/kudu/util/char_util-test.cc
+++ b/src/kudu/util/char_util-test.cc
@@ -23,6 +23,7 @@
 #include <glog/logging.h>
 #include <gtest/gtest.h>
 
+#include "kudu/util/debug/sanitizer_scopes.h"
 #include "kudu/util/env.h"
 #include "kudu/util/faststring.h"
 #include "kudu/util/init.h"
@@ -60,6 +61,10 @@ class CharUtilTest : public KuduTest {
   }
 
   void StressTest(const Slice& slice, int length) {
+    // The memory accesses done in UTF8Truncate are quite slow with TSAN
+    // instrumentation, probably because so many of them are unaligned.
+    // Since this test is single-threaded, let's just disable TSAN in it.
+    debug::ScopedTSANIgnoreReadsAndWrites ignore_tsan;
     for (int i = 0; i < kNumCycles_; ++i) {
       Slice result;
       auto ptr = Truncate(slice, length, &result);
diff --git a/src/kudu/util/char_util.cc b/src/kudu/util/char_util.cc
index 4d798e1..e864d87 100644
--- a/src/kudu/util/char_util.cc
+++ b/src/kudu/util/char_util.cc
@@ -17,11 +17,12 @@
 
 #include "kudu/util/char_util.h"
 
-#include <algorithm>
-#include <cstring>
 #include <emmintrin.h>
 #include <smmintrin.h>
 
+#include <algorithm>
+#include <cstring>
+
 namespace kudu {
 
 Slice UTF8Truncate(Slice val, size_t max_utf8_length) {