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 2017/04/19 20:00:43 UTC

[2/2] kudu git commit: rowset_tree-test: protect against divide by zero

rowset_tree-test: protect against divide by zero

A precommit run failed in ASAN with the following error:

  [----------] 20 tests from Parameters/TestRowSetTreePerformance
  [ RUN      ] Parameters/TestRowSetTreePerformance.TestPerformance/0
  WARNING: Logging before InitGoogleLogging() is written to STDERR
  I0419 02:42:55.175978 12769 test_util.cc:180] Using random seed: -79660807
  I0419 02:42:55.403628 12769 rowset_tree-test.cc:176] Q=   10 R=   10     1-by-1 36 ms
  /home/jenkins-slave/workspace/kudu-master/3/src/kudu/tablet/rowset_tree-test.cc:184:39: runtime error: division by zero
  SUMMARY: AddressSanitizer: undefined-behavior /home/jenkins-slave/workspace/kudu-master/3/src/kudu/tablet/rowset_tree-test.cc:184:39 in

It seems incredibly unlikely for batch_total to be 0, but on my laptop I
was able to reproduce this reliably in the first iteration (where the number
of queries and rowsets are 10).

Change-Id: I7033f3242924eabc5e843546bb879a16559a6aed
Reviewed-on: http://gerrit.cloudera.org:8080/6691
Reviewed-by: Todd Lipcon <to...@apache.org>
Tested-by: Kudu Jenkins


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

Branch: refs/heads/master
Commit: 998e4cabeb19828c15984102816006f09c155af4
Parents: 49363aa
Author: Adar Dembo <ad...@cloudera.com>
Authored: Wed Apr 19 12:05:58 2017 -0700
Committer: Adar Dembo <ad...@cloudera.com>
Committed: Wed Apr 19 20:00:14 2017 +0000

----------------------------------------------------------------------
 src/kudu/tablet/rowset_tree-test.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kudu/blob/998e4cab/src/kudu/tablet/rowset_tree-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/tablet/rowset_tree-test.cc b/src/kudu/tablet/rowset_tree-test.cc
index 801961c..9de20d7 100644
--- a/src/kudu/tablet/rowset_tree-test.cc
+++ b/src/kudu/tablet/rowset_tree-test.cc
@@ -181,7 +181,7 @@ TEST_P(TestRowSetTreePerformance, TestPerformance) {
                             case_desc.c_str(),
                             "batched",
                             static_cast<int>(batch_total/1e6),
-                            oat_total / batch_total);
+                            batch_total ? (oat_total / batch_total) : 0);
 }
 
 TEST_F(TestRowSetTree, TestEndpointsConsistency) {