[tests] clean-up on kudu::client::ScanToStrings

With this patch, kudu::client::ScanToStrings() returns Status.
The new signature is more convenient for localizing scan errors, if any.

Change-Id: I8e7ba56d2e946c1ac9a4db2ef3a542f0a118471d
Reviewed-on: http://gerrit.cloudera.org:8080/7027
Reviewed-by: Todd Lipcon <[email protected]>
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/ca2704c7
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/ca2704c7
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/ca2704c7

Branch: refs/heads/master
Commit: ca2704c7dd46b9dbbafa89e68fe977259448b8fa
Parents: 3b934ae
Author: Alexey Serbin <[email protected]>
Authored: Tue May 30 23:53:05 2017 -0700
Committer: Alexey Serbin <[email protected]>
Committed: Wed May 31 20:11:24 2017 +0000

----------------------------------------------------------------------
 src/kudu/client/client-test-util.cc             |  9 +++---
 src/kudu/client/client-test-util.h              |  9 +++---
 src/kudu/client/client-test.cc                  | 30 ++++++++++----------
 .../alter_table-randomized-test.cc              |  2 +-
 src/kudu/integration-tests/alter_table-test.cc  |  2 +-
 .../integration-tests/client-stress-test.cc     |  2 +-
 .../flex_partitioning-itest.cc                  | 28 +++++++++---------
 7 files changed, 41 insertions(+), 41 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/client/client-test-util.cc
----------------------------------------------------------------------
diff --git a/src/kudu/client/client-test-util.cc 
b/src/kudu/client/client-test-util.cc
index 4d6a813..32a4020 100644
--- a/src/kudu/client/client-test-util.cc
+++ b/src/kudu/client/client-test-util.cc
@@ -59,7 +59,7 @@ void ScanTableToStrings(KuduTable* table, vector<string>* 
row_strings) {
   // of the retry code below.
   ASSERT_OK(scanner.SetSelection(KuduClient::LEADER_ONLY));
   ASSERT_OK(scanner.SetTimeoutMillis(15000));
-  ScanToStrings(&scanner, row_strings);
+  ASSERT_OK(ScanToStrings(&scanner, row_strings));
 }
 
 int64_t CountTableRows(KuduTable* table) {
@@ -111,15 +111,16 @@ Status CountRowsWithRetries(KuduScanner* scanner, size_t* 
row_count) {
   return Status::OK();
 }
 
-void ScanToStrings(KuduScanner* scanner, vector<string>* row_strings) {
-  ASSERT_OK(scanner->Open());
+Status ScanToStrings(KuduScanner* scanner, vector<string>* row_strings) {
+  RETURN_NOT_OK(scanner->Open());
   vector<KuduRowResult> rows;
   while (scanner->HasMoreRows()) {
-    ASSERT_OK(scanner->NextBatch(&rows));
+    RETURN_NOT_OK(scanner->NextBatch(&rows));
     for (const KuduRowResult& row : rows) {
       row_strings->push_back(row.ToString());
     }
   }
+  return Status::OK();
 }
 
 KuduSchema KuduSchemaFromSchema(const Schema& schema) {

http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/client/client-test-util.h
----------------------------------------------------------------------
diff --git a/src/kudu/client/client-test-util.h 
b/src/kudu/client/client-test-util.h
index 7faed62..f3ff1f6 100644
--- a/src/kudu/client/client-test-util.h
+++ b/src/kudu/client/client-test-util.h
@@ -14,8 +14,8 @@
 // KIND, either express or implied.  See the License for the
 // specific language governing permissions and limitations
 // under the License.
-#ifndef KUDU_CLIENT_CLIENT_TEST_UTIL_H
-#define KUDU_CLIENT_CLIENT_TEST_UTIL_H
+
+#pragma once
 
 #include <string>
 #include <vector>
@@ -54,12 +54,11 @@ int64_t CountTableRows(KuduTable* table);
 // count. The scan operations are retried a few times in case of a timeout.
 Status CountRowsWithRetries(KuduScanner* scanner, size_t* row_count);
 
-void ScanToStrings(KuduScanner* scanner, std::vector<std::string>* 
row_strings);
+Status ScanToStrings(KuduScanner* scanner,
+                     std::vector<std::string>* row_strings) WARN_UNUSED_RESULT;
 
 // Convert a kudu::Schema to a kudu::client::KuduSchema.
 KuduSchema KuduSchemaFromSchema(const Schema& schema);
 
 } // namespace client
 } // namespace kudu
-
-#endif /* KUDU_CLIENT_CLIENT_TEST_UTIL_H */

http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/client/client-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/client/client-test.cc b/src/kudu/client/client-test.cc
index a6c0f03..8e79e32 100644
--- a/src/kudu/client/client-test.cc
+++ b/src/kudu/client/client-test.cc
@@ -1346,7 +1346,7 @@ TEST_F(ClientTest, TestNonCoveringRangePartitions) {
     vector<string> rows;
     KuduScanner scanner(table.get());
     ASSERT_OK(scanner.SetFaultTolerant());
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
 
     ASSERT_EQ(200, rows.size());
     ASSERT_EQ(R"((int32 key=0, int32 int_val=0, string string_val="hello 0",)"
@@ -1361,7 +1361,7 @@ TEST_F(ClientTest, TestNonCoveringRangePartitions) {
     ASSERT_OK(scanner.SetFaultTolerant());
     ASSERT_OK(scanner.AddConjunctPredicate(table->NewComparisonPredicate(
               "key", KuduPredicate::GREATER_EQUAL, KuduValue::FromInt(100))));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
 
     ASSERT_EQ(100, rows.size());
     ASSERT_EQ(R"((int32 key=200, int32 int_val=400, string string_val="hello 
200",)"
@@ -1376,7 +1376,7 @@ TEST_F(ClientTest, TestNonCoveringRangePartitions) {
     ASSERT_OK(scanner.SetFaultTolerant());
     ASSERT_OK(scanner.AddConjunctPredicate(table->NewComparisonPredicate(
               "key", KuduPredicate::LESS_EQUAL, KuduValue::FromInt(199))));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
 
     ASSERT_EQ(100, rows.size());
     ASSERT_EQ(R"((int32 key=0, int32 int_val=0, string string_val="hello 0",)"
@@ -1391,9 +1391,9 @@ TEST_F(ClientTest, TestNonCoveringRangePartitions) {
     ASSERT_OK(scanner.SetFaultTolerant());
     ASSERT_OK(scanner.AddConjunctPredicate(table->NewComparisonPredicate(
               "key", KuduPredicate::LESS_EQUAL, KuduValue::FromInt(-1))));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
 
-    ASSERT_EQ(0, rows.size());
+    ASSERT_TRUE(rows.empty());
   }
 
   { // key >= 120 && key <= 180
@@ -1404,9 +1404,9 @@ TEST_F(ClientTest, TestNonCoveringRangePartitions) {
               "key", KuduPredicate::GREATER_EQUAL, KuduValue::FromInt(120))));
     ASSERT_OK(scanner.AddConjunctPredicate(table->NewComparisonPredicate(
               "key", KuduPredicate::LESS_EQUAL, KuduValue::FromInt(180))));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
 
-    ASSERT_EQ(0, rows.size());
+    ASSERT_TRUE(rows.empty());
   }
 
   { // key >= 300
@@ -1415,9 +1415,9 @@ TEST_F(ClientTest, TestNonCoveringRangePartitions) {
     ASSERT_OK(scanner.SetFaultTolerant());
     ASSERT_OK(scanner.AddConjunctPredicate(table->NewComparisonPredicate(
               "key", KuduPredicate::GREATER_EQUAL, KuduValue::FromInt(300))));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
 
-    ASSERT_EQ(0, rows.size());
+    ASSERT_TRUE(rows.empty());
   }
 }
 
@@ -1720,7 +1720,7 @@ TEST_F(ClientTest, TestScanWithEncodedRangePredicate) {
     CHECK_OK(row->SetInt32(0, 8));
     ASSERT_OK(scanner.AddExclusiveUpperBound(*row));
     vector<string> rows;
-    ASSERT_NO_FATAL_FAILURE(ScanToStrings(&scanner, &rows));
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
     ASSERT_EQ(8 - 5, rows.size());
     EXPECT_EQ(all_rows[5], rows.front());
     EXPECT_EQ(all_rows[7], rows.back());
@@ -1734,7 +1734,7 @@ TEST_F(ClientTest, TestScanWithEncodedRangePredicate) {
     CHECK_OK(row->SetInt32(0, 15));
     ASSERT_OK(scanner.AddExclusiveUpperBound(*row));
     vector<string> rows;
-    ASSERT_NO_FATAL_FAILURE(ScanToStrings(&scanner, &rows));
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
     ASSERT_EQ(15 - 5, rows.size());
     EXPECT_EQ(all_rows[5], rows.front());
     EXPECT_EQ(all_rows[14], rows.back());
@@ -1748,7 +1748,7 @@ TEST_F(ClientTest, TestScanWithEncodedRangePredicate) {
     CHECK_OK(row->SetInt32(0, 20));
     ASSERT_OK(scanner.AddExclusiveUpperBound(*row));
     vector<string> rows;
-    ASSERT_NO_FATAL_FAILURE(ScanToStrings(&scanner, &rows));
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
     ASSERT_EQ(20 - 15, rows.size());
     EXPECT_EQ(all_rows[15], rows.front());
     EXPECT_EQ(all_rows[19], rows.back());
@@ -1760,7 +1760,7 @@ TEST_F(ClientTest, TestScanWithEncodedRangePredicate) {
     CHECK_OK(row->SetInt32(0, 5));
     ASSERT_OK(scanner.AddLowerBound(*row));
     vector<string> rows;
-    ASSERT_NO_FATAL_FAILURE(ScanToStrings(&scanner, &rows));
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
     ASSERT_EQ(95, rows.size());
     EXPECT_EQ(all_rows[5], rows.front());
     EXPECT_EQ(all_rows[99], rows.back());
@@ -1772,7 +1772,7 @@ TEST_F(ClientTest, TestScanWithEncodedRangePredicate) {
     CHECK_OK(row->SetInt32(0, 5));
     ASSERT_OK(scanner.AddExclusiveUpperBound(*row));
     vector<string> rows;
-    ASSERT_NO_FATAL_FAILURE(ScanToStrings(&scanner, &rows));
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
     ASSERT_EQ(5, rows.size());
     EXPECT_EQ(all_rows[0], rows.front());
     EXPECT_EQ(all_rows[4], rows.back());
@@ -1784,7 +1784,7 @@ TEST_F(ClientTest, TestScanWithEncodedRangePredicate) {
     CHECK_OK(row->SetInt32(0, 15));
     ASSERT_OK(scanner.AddExclusiveUpperBound(*row));
     vector<string> rows;
-    ASSERT_NO_FATAL_FAILURE(ScanToStrings(&scanner, &rows));
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
     ASSERT_EQ(15, rows.size());
     EXPECT_EQ(all_rows[0], rows.front());
     EXPECT_EQ(all_rows[14], rows.back());

http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/integration-tests/alter_table-randomized-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/alter_table-randomized-test.cc 
b/src/kudu/integration-tests/alter_table-randomized-test.cc
index 4e125f7..c9af5e2 100644
--- a/src/kudu/integration-tests/alter_table-randomized-test.cc
+++ b/src/kudu/integration-tests/alter_table-randomized-test.cc
@@ -601,7 +601,7 @@ struct MirrorTable {
       ASSERT_OK(scanner.SetSelection(KuduClient::LEADER_ONLY));
       ASSERT_OK(scanner.SetFaultTolerant());
       scanner.SetTimeoutMillis(60000);
-      NO_FATALS(ScanToStrings(&scanner, &rows));
+      ASSERT_OK(ScanToStrings(&scanner, &rows));
     }
 
     // Then get our mock table.

http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/integration-tests/alter_table-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/alter_table-test.cc 
b/src/kudu/integration-tests/alter_table-test.cc
index 03d2395..3360271 100644
--- a/src/kudu/integration-tests/alter_table-test.cc
+++ b/src/kudu/integration-tests/alter_table-test.cc
@@ -1041,7 +1041,7 @@ TEST_F(AlterTableTest, TestReadHistoryAfterAlter) {
   // Delete then is assigned that timestamp.
   ASSERT_OK(scanner.SetSnapshotRaw(ts1 - 1));
   vector<string> row_strings;
-  client::ScanToStrings(&scanner, &row_strings);
+  ASSERT_OK(client::ScanToStrings(&scanner, &row_strings));
   ASSERT_EQ(1, row_strings.size());
   ASSERT_EQ("(int32 c0=0, int32 c1=0, int32 c2=12345)", row_strings[0]);
 }

http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/integration-tests/client-stress-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/client-stress-test.cc 
b/src/kudu/integration-tests/client-stress-test.cc
index 43cc2da..e909b1a 100644
--- a/src/kudu/integration-tests/client-stress-test.cc
+++ b/src/kudu/integration-tests/client-stress-test.cc
@@ -78,7 +78,7 @@ class ClientStressTest : public KuduTest {
     CHECK_OK(scanner.AddConjunctPredicate(table->NewComparisonPredicate(
         "key", client::KuduPredicate::GREATER_EQUAL,
         client::KuduValue::FromInt(start_key))));
-    ScanToStrings(&scanner, &rows);
+    CHECK_OK(ScanToStrings(&scanner, &rows));
   }
 
   virtual bool multi_master() const {

http://git-wip-us.apache.org/repos/asf/kudu/blob/ca2704c7/src/kudu/integration-tests/flex_partitioning-itest.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/flex_partitioning-itest.cc 
b/src/kudu/integration-tests/flex_partitioning-itest.cc
index 32daa2b..7f90511 100644
--- a/src/kudu/integration-tests/flex_partitioning-itest.cc
+++ b/src/kudu/integration-tests/flex_partitioning-itest.cc
@@ -327,21 +327,21 @@ Status FlexPartitioningITest::InsertRows(const 
RangePartitionOptions& range_part
 
 void FlexPartitioningITest::CheckScanWithColumnPredicate(Slice col_name, int 
lower, int upper) {
   KuduScanner scanner(table_.get());
-  CHECK_OK(scanner.SetTimeoutMillis(60000));
-  CHECK_OK(scanner.AddConjunctPredicate(table_->NewComparisonPredicate(
+  ASSERT_OK(scanner.SetTimeoutMillis(60000));
+  ASSERT_OK(scanner.AddConjunctPredicate(table_->NewComparisonPredicate(
       col_name, KuduPredicate::GREATER_EQUAL, KuduValue::FromInt(lower))));
-  CHECK_OK(scanner.AddConjunctPredicate(table_->NewComparisonPredicate(
+  ASSERT_OK(scanner.AddConjunctPredicate(table_->NewComparisonPredicate(
       col_name, KuduPredicate::LESS_EQUAL, KuduValue::FromInt(upper))));
 
   vector<string> rows;
-  ScanToStrings(&scanner, &rows);
+  ASSERT_OK(ScanToStrings(&scanner, &rows));
   std::sort(rows.begin(), rows.end());
 
   // Manually evaluate the predicate against the data we think we inserted.
   vector<string> expected_rows;
   for (auto& row : inserted_rows_) {
     int32_t val;
-    CHECK_OK(row->GetInt32(col_name, &val));
+    ASSERT_OK(row->GetInt32(col_name, &val));
     if (val >= lower && val <= upper) {
       expected_rows.push_back("(" + row->ToString() + ")");
     }
@@ -357,23 +357,23 @@ void 
FlexPartitioningITest::CheckScanWithColumnPredicate(Slice col_name, int low
 void FlexPartitioningITest::CheckScanTokensWithColumnPredicate(
     Slice col_name, int lower, int upper, const vector<string>& expected_rows) 
{
   KuduScanTokenBuilder builder(table_.get());
-  CHECK_OK(builder.SetTimeoutMillis(60000));
+  ASSERT_OK(builder.SetTimeoutMillis(60000));
 
-  CHECK_OK(builder.AddConjunctPredicate(table_->NewComparisonPredicate(
+  ASSERT_OK(builder.AddConjunctPredicate(table_->NewComparisonPredicate(
       col_name, KuduPredicate::GREATER_EQUAL, KuduValue::FromInt(lower))));
-  CHECK_OK(builder.AddConjunctPredicate(table_->NewComparisonPredicate(
+  ASSERT_OK(builder.AddConjunctPredicate(table_->NewComparisonPredicate(
       col_name, KuduPredicate::LESS_EQUAL, KuduValue::FromInt(upper))));
 
   vector<KuduScanToken*> tokens;
   ElementDeleter DeleteTable(&tokens);
-  CHECK_OK(builder.Build(&tokens));
+  ASSERT_OK(builder.Build(&tokens));
 
   vector<string> rows;
   for (auto token : tokens) {
     KuduScanner* scanner_ptr;
-    CHECK_OK(token->IntoKuduScanner(&scanner_ptr));
+    ASSERT_OK(token->IntoKuduScanner(&scanner_ptr));
     unique_ptr<KuduScanner> scanner(scanner_ptr);
-    ScanToStrings(scanner.get(), &rows);
+    ASSERT_OK(ScanToStrings(scanner.get(), &rows));
   }
   std::sort(rows.begin(), rows.end());
 
@@ -387,7 +387,7 @@ void FlexPartitioningITest::CheckPKRangeScan(int lower, int 
upper) {
   ASSERT_OK(scanner.AddLowerBound(*inserted_rows_[lower]));
   ASSERT_OK(scanner.AddExclusiveUpperBound(*inserted_rows_[upper]));
   vector<string> rows;
-  ScanToStrings(&scanner, &rows);
+  ASSERT_OK(ScanToStrings(&scanner, &rows));
   std::sort(rows.begin(), rows.end());
 
   vector<string> expected_rows;
@@ -419,7 +419,7 @@ void FlexPartitioningITest::CheckPartitionKeyRangeScan() {
     scanner.SetTimeoutMillis(60000);
     ASSERT_OK(scanner.AddLowerBoundPartitionKeyRaw(partition_key_start));
     
ASSERT_OK(scanner.AddExclusiveUpperBoundPartitionKeyRaw(partition_key_end));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
   }
   std::sort(rows.begin(), rows.end());
 
@@ -454,7 +454,7 @@ void 
FlexPartitioningITest::CheckPartitionKeyRangeScanWithPKRange(int lower, int
     
ASSERT_OK(scanner.AddExclusiveUpperBoundPartitionKeyRaw(partition_key_end));
     ASSERT_OK(scanner.AddLowerBound(*inserted_rows_[lower]));
     ASSERT_OK(scanner.AddExclusiveUpperBound(*inserted_rows_[upper]));
-    ScanToStrings(&scanner, &rows);
+    ASSERT_OK(ScanToStrings(&scanner, &rows));
   }
   std::sort(rows.begin(), rows.end());
 

Reply via email to