You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by al...@apache.org on 2017/05/31 20:14:42 UTC
[1/3] kudu git commit: KUDU-1914 Add positive .htpasswd test case
Repository: kudu
Updated Branches:
refs/heads/master 3b6ab6449 -> ca2704c7d
KUDU-1914 Add positive .htpasswd test case
This commit adds a test to check if a proper user/password
pair allows a user to connect successfully to a Web UI with
.htpasswd support enabled.
Change-Id: Ia743ed41b9d68f9beb94c607e18613d0530526be
Reviewed-on: http://gerrit.cloudera.org:8080/7026
Tested-by: Kudu Jenkins
Reviewed-by: Todd Lipcon <to...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/7f91a119
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/7f91a119
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/7f91a119
Branch: refs/heads/master
Commit: 7f91a11939e0e09bd02de2c1ac0ce4bce218f3d9
Parents: 3b6ab64
Author: Sam Okrent <sa...@cloudera.com>
Authored: Tue May 30 18:16:58 2017 -0700
Committer: Todd Lipcon <to...@apache.org>
Committed: Wed May 31 18:31:54 2017 +0000
----------------------------------------------------------------------
src/kudu/security/test/test_pass.cc | 6 +++---
src/kudu/security/test/test_pass.h | 4 ++++
src/kudu/server/webserver-test.cc | 8 +++++++-
src/kudu/util/curl_util.cc | 2 ++
4 files changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kudu/blob/7f91a119/src/kudu/security/test/test_pass.cc
----------------------------------------------------------------------
diff --git a/src/kudu/security/test/test_pass.cc b/src/kudu/security/test/test_pass.cc
index 9a0ab46..f99ab3c 100644
--- a/src/kudu/security/test/test_pass.cc
+++ b/src/kudu/security/test/test_pass.cc
@@ -28,9 +28,9 @@ namespace security {
Status CreateTestHTPasswd(const string& dir,
string* passwd_file) {
- // In the format of user:realm:digest. Digest is generated bases on
- // password 'test'.
- const char *kHTPasswd = "test:0.0.0.0:e4c02fbc8e89377a942ffc6b1bc3a566";
+ // In the format of user:realm:digest. Digest is generated based on
+ // user/password pair in kTestAuthString
+ const char *kHTPasswd = "test:mydomain.com:8b6f595afb3c037b7bd79b89d9576d06";
*passwd_file = JoinPathSegments(dir, "test.passwd");
RETURN_NOT_OK(WriteStringToFile(Env::Default(), kHTPasswd, *passwd_file));
return Status::OK();
http://git-wip-us.apache.org/repos/asf/kudu/blob/7f91a119/src/kudu/security/test/test_pass.h
----------------------------------------------------------------------
diff --git a/src/kudu/security/test/test_pass.h b/src/kudu/security/test/test_pass.h
index c0974d0..5f730fe 100644
--- a/src/kudu/security/test/test_pass.h
+++ b/src/kudu/security/test/test_pass.h
@@ -24,6 +24,10 @@
namespace kudu {
namespace security {
+// Username and password for HTTP authentication, corresponding to
+// .htpasswd created by CreateTestHTPasswd()
+const std::string kTestAuthString = "test:test";
+
// Creates .htpasswd for HTTP basic authentication in the format
// of 'user:realm:digest', returning the path in '*passwd_file'.
Status CreateTestHTPasswd(const std::string &dir,
http://git-wip-us.apache.org/repos/asf/kudu/blob/7f91a119/src/kudu/server/webserver-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/server/webserver-test.cc b/src/kudu/server/webserver-test.cc
index 8a2c541..c29c9aa 100644
--- a/src/kudu/server/webserver-test.cc
+++ b/src/kudu/server/webserver-test.cc
@@ -111,12 +111,18 @@ class PasswdWebserverTest : public WebserverTest {
// Send a HTTP request with no username and password. It should reject
// the request as the .htpasswd is presented to webserver.
-TEST_F(PasswdWebserverTest, TestPasswd) {
+TEST_F(PasswdWebserverTest, TestPasswdMissing) {
Status status = curl_.FetchURL(strings::Substitute("http://$0/", addr_.ToString()),
&buf_);
ASSERT_EQ("Remote error: HTTP 401", status.ToString());
}
+TEST_F(PasswdWebserverTest, TestPasswdPresent) {
+ string auth_url = strings::Substitute("http://$0@$1/", security::kTestAuthString,
+ addr_.ToString());
+ ASSERT_OK(curl_.FetchURL(auth_url, &buf_));
+}
+
TEST_F(WebserverTest, TestIndexPage) {
curl_.set_return_headers(true);
ASSERT_OK(curl_.FetchURL(strings::Substitute("http://$0/", addr_.ToString()),
http://git-wip-us.apache.org/repos/asf/kudu/blob/7f91a119/src/kudu/util/curl_util.cc
----------------------------------------------------------------------
diff --git a/src/kudu/util/curl_util.cc b/src/kudu/util/curl_util.cc
index 6211834..3e8e591 100644
--- a/src/kudu/util/curl_util.cc
+++ b/src/kudu/util/curl_util.cc
@@ -89,6 +89,8 @@ Status EasyCurl::DoRequest(const std::string& url,
post_data->c_str())));
}
+ RETURN_NOT_OK(TranslateError(curl_easy_setopt(curl_, CURLOPT_HTTPAUTH, CURLAUTH_ANY)));
+
RETURN_NOT_OK(TranslateError(curl_easy_perform(curl_)));
long rc; // NOLINT(runtime/int) curl wants a long
RETURN_NOT_OK(TranslateError(curl_easy_getinfo(curl_, CURLINFO_RESPONSE_CODE, &rc)));
[3/3] kudu git commit: [tests] clean-up on kudu::client::ScanToStrings
Posted by al...@apache.org.
[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 <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/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 <as...@cloudera.com>
Authored: Tue May 30 23:53:05 2017 -0700
Committer: Alexey Serbin <as...@cloudera.com>
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());
[2/3] kudu git commit: Move CreateTableForTesting into
registration-test
Posted by al...@apache.org.
Move CreateTableForTesting into registration-test
This utility function was only used in one spot, so moving it out of the
header.
Change-Id: Id72a37b2dee05db65f27c27d52b0f18dd5c489f2
Reviewed-on: http://gerrit.cloudera.org:8080/6961
Reviewed-by: Alexey Serbin <as...@cloudera.com>
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/3b934aeb
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/3b934aeb
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/3b934aeb
Branch: refs/heads/master
Commit: 3b934aeb240059907f113127072b04db05f9c880
Parents: 7f91a11
Author: Todd Lipcon <to...@cloudera.com>
Authored: Mon May 22 19:19:08 2017 -0700
Committer: Todd Lipcon <to...@apache.org>
Committed: Wed May 31 19:59:26 2017 +0000
----------------------------------------------------------------------
src/kudu/integration-tests/registration-test.cc | 69 ++++++++++++++++++++
src/kudu/master/master-test-util.h | 59 -----------------
2 files changed, 69 insertions(+), 59 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kudu/blob/3b934aeb/src/kudu/integration-tests/registration-test.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/registration-test.cc b/src/kudu/integration-tests/registration-test.cc
index 6492adf..a478616 100644
--- a/src/kudu/integration-tests/registration-test.cc
+++ b/src/kudu/integration-tests/registration-test.cc
@@ -56,11 +56,80 @@ namespace kudu {
using std::vector;
using std::shared_ptr;
using std::string;
+
+using master::CatalogManager;
+using master::CreateTableRequestPB;
+using master::CreateTableResponsePB;
+using master::GetTableLocationsResponsePB;
+using master::GetTableSchemaRequestPB;
+using master::GetTableSchemaResponsePB;
+using master::IsCreateTableDoneRequestPB;
+using master::IsCreateTableDoneResponsePB;
using master::MiniMaster;
using master::TSDescriptor;
using master::TabletLocationsPB;
using tserver::MiniTabletServer;
+void CreateTableForTesting(MiniMaster* mini_master,
+ const string& table_name,
+ const Schema& schema,
+ string *tablet_id) {
+ {
+ CreateTableRequestPB req;
+ CreateTableResponsePB resp;
+
+ req.set_name(table_name);
+ req.set_num_replicas(1);
+ ASSERT_OK(SchemaToPB(schema, req.mutable_schema()));
+ CatalogManager* catalog = mini_master->master()->catalog_manager();
+ CatalogManager::ScopedLeaderSharedLock l(catalog);
+ ASSERT_OK(l.first_failed_status());
+ ASSERT_OK(catalog->CreateTable(&req, &resp, NULL));
+ }
+
+ int wait_time = 1000;
+ bool is_table_created = false;
+ for (int i = 0; i < 80; ++i) {
+ IsCreateTableDoneRequestPB req;
+ IsCreateTableDoneResponsePB resp;
+
+ req.mutable_table()->set_table_name(table_name);
+ CatalogManager* catalog = mini_master->master()->catalog_manager();
+ {
+ CatalogManager::ScopedLeaderSharedLock l(catalog);
+ ASSERT_OK(l.first_failed_status());
+ ASSERT_OK(catalog->IsCreateTableDone(&req, &resp));
+ }
+ if (resp.done()) {
+ is_table_created = true;
+ break;
+ }
+
+ VLOG(1) << "Waiting for table '" << table_name << "'to be created";
+
+ SleepFor(MonoDelta::FromMicroseconds(wait_time));
+ wait_time = std::min(wait_time * 5 / 4, 1000000);
+ }
+ ASSERT_TRUE(is_table_created);
+
+ {
+ GetTableSchemaRequestPB req;
+ GetTableSchemaResponsePB resp;
+ req.mutable_table()->set_table_name(table_name);
+ CatalogManager* catalog = mini_master->master()->catalog_manager();
+ CatalogManager::ScopedLeaderSharedLock l(catalog);
+ ASSERT_OK(l.first_failed_status());
+ ASSERT_OK(catalog->GetTableSchema(&req, &resp));
+ ASSERT_TRUE(resp.create_table_done());
+ }
+
+ GetTableLocationsResponsePB resp;
+ ASSERT_OK(WaitForRunningTabletCount(mini_master, table_name, 1, &resp));
+ *tablet_id = resp.tablet_locations(0).tablet_id();
+ LOG(INFO) << "Got tablet " << *tablet_id << " for table " << table_name;
+}
+
+
// Tests for the Tablet Server registering with the Master,
// and the master maintaining the tablet descriptor.
class RegistrationTest : public KuduTest {
http://git-wip-us.apache.org/repos/asf/kudu/blob/3b934aeb/src/kudu/master/master-test-util.h
----------------------------------------------------------------------
diff --git a/src/kudu/master/master-test-util.h b/src/kudu/master/master-test-util.h
index 44a2874..7e7f021 100644
--- a/src/kudu/master/master-test-util.h
+++ b/src/kudu/master/master-test-util.h
@@ -68,65 +68,6 @@ Status WaitForRunningTabletCount(MiniMaster* mini_master,
return Status::RuntimeError("Unreachable statement"); // Suppress compiler warnings.
}
-void CreateTableForTesting(MiniMaster* mini_master,
- const string& table_name,
- const Schema& schema,
- string *tablet_id) {
- {
- CreateTableRequestPB req;
- CreateTableResponsePB resp;
-
- req.set_name(table_name);
- req.set_num_replicas(1);
- ASSERT_OK(SchemaToPB(schema, req.mutable_schema()));
- CatalogManager* catalog = mini_master->master()->catalog_manager();
- CatalogManager::ScopedLeaderSharedLock l(catalog);
- ASSERT_OK(l.first_failed_status());
- ASSERT_OK(catalog->CreateTable(&req, &resp, NULL));
- }
-
- int wait_time = 1000;
- bool is_table_created = false;
- for (int i = 0; i < 80; ++i) {
- IsCreateTableDoneRequestPB req;
- IsCreateTableDoneResponsePB resp;
-
- req.mutable_table()->set_table_name(table_name);
- CatalogManager* catalog = mini_master->master()->catalog_manager();
- {
- CatalogManager::ScopedLeaderSharedLock l(catalog);
- ASSERT_OK(l.first_failed_status());
- ASSERT_OK(catalog->IsCreateTableDone(&req, &resp));
- }
- if (resp.done()) {
- is_table_created = true;
- break;
- }
-
- VLOG(1) << "Waiting for table '" << table_name << "'to be created";
-
- SleepFor(MonoDelta::FromMicroseconds(wait_time));
- wait_time = std::min(wait_time * 5 / 4, 1000000);
- }
- ASSERT_TRUE(is_table_created);
-
- {
- GetTableSchemaRequestPB req;
- GetTableSchemaResponsePB resp;
- req.mutable_table()->set_table_name(table_name);
- CatalogManager* catalog = mini_master->master()->catalog_manager();
- CatalogManager::ScopedLeaderSharedLock l(catalog);
- ASSERT_OK(l.first_failed_status());
- ASSERT_OK(catalog->GetTableSchema(&req, &resp));
- ASSERT_TRUE(resp.create_table_done());
- }
-
- GetTableLocationsResponsePB resp;
- ASSERT_OK(WaitForRunningTabletCount(mini_master, table_name, 1, &resp));
- *tablet_id = resp.tablet_locations(0).tablet_id();
- LOG(INFO) << "Got tablet " << *tablet_id << " for table " << table_name;
-}
-
} // namespace master
} // namespace kudu