refactor(db): refactor DescribeTable

Former-commit-id: 021d731f3be6f338423caabef59bdd4c46ed02d8
pull/191/head
Xu Peng 2019-05-27 17:54:00 +08:00
parent 3d330e0aa4
commit 624e34f10d
7 changed files with 18 additions and 23 deletions

View File

@ -41,7 +41,7 @@ Status DBImpl<EngineT>::add_group(meta::TableSchema& table_schema) {
template<typename EngineT>
Status DBImpl<EngineT>::get_group(meta::TableSchema& table_schema) {
return _pMeta->get_group(table_schema);
return _pMeta->DescribeTable(table_schema);
}
template<typename EngineT>

View File

@ -119,7 +119,7 @@ Status DBMetaImpl::delete_group_partitions(const std::string& table_id,
TableSchema table_schema;
table_schema.table_id = table_id;
auto status = get_group(table_schema);
auto status = DescribeTable(table_schema);
if (!status.ok()) {
return status;
}
@ -178,11 +178,7 @@ Status DBMetaImpl::CreateTable(TableSchema& table_schema) {
return Status::OK();
}
Status DBMetaImpl::get_group(TableSchema& table_schema) {
return get_group_no_lock(table_schema);
}
Status DBMetaImpl::get_group_no_lock(TableSchema& table_schema) {
Status DBMetaImpl::DescribeTable(TableSchema& table_schema) {
try {
auto groups = ConnectorPtr->select(columns(&TableSchema::id,
&TableSchema::table_id,
@ -228,7 +224,7 @@ Status DBMetaImpl::add_group_file(TableFileSchema& group_file) {
}
TableSchema table_schema;
table_schema.table_id = group_file.table_id;
auto status = get_group(table_schema);
auto status = DescribeTable(table_schema);
if (!status.ok()) {
return status;
}
@ -290,7 +286,7 @@ Status DBMetaImpl::files_to_index(TableFilesSchema& files) {
if (groupItr == groups.end()) {
TableSchema table_schema;
table_schema.table_id = group_file.table_id;
auto status = get_group_no_lock(table_schema);
auto status = DescribeTable(table_schema);
if (!status.ok()) {
return status;
}
@ -329,7 +325,7 @@ Status DBMetaImpl::files_to_search(const std::string &table_id,
TableSchema table_schema;
table_schema.table_id = table_id;
auto status = get_group_no_lock(table_schema);
auto status = DescribeTable(table_schema);
if (!status.ok()) {
return status;
}
@ -374,7 +370,7 @@ Status DBMetaImpl::files_to_merge(const std::string& table_id,
TableSchema table_schema;
table_schema.table_id = table_id;
auto status = get_group_no_lock(table_schema);
auto status = DescribeTable(table_schema);
if (!status.ok()) {
return status;
}
@ -672,7 +668,7 @@ Status DBMetaImpl::count(const std::string& table_id, long& result) {
TableSchema table_schema;
table_schema.table_id = table_id;
auto status = get_group_no_lock(table_schema);
auto status = DescribeTable(table_schema);
if (!status.ok()) {
return status;
}

View File

@ -20,7 +20,7 @@ public:
DBMetaImpl(const DBMetaOptions& options_);
virtual Status CreateTable(TableSchema& table_schema) override;
virtual Status get_group(TableSchema& group_info_) override;
virtual Status DescribeTable(TableSchema& group_info_) override;
virtual Status has_group(const std::string& table_id_, bool& has_or_not_) override;
virtual Status add_group_file(TableFileSchema& group_file_info) override;
@ -68,7 +68,6 @@ private:
Status NextFileId(std::string& file_id);
Status NextGroupId(std::string& table_id);
Status discard_files_of_size(long to_discard_size);
Status get_group_no_lock(TableSchema& group_info);
std::string GetGroupPath(const std::string& table_id);
std::string GetGroupDatePartitionPath(const std::string& table_id, DateT& date);
void GetGroupFilePath(TableFileSchema& group_file);

View File

@ -123,11 +123,11 @@ Status LocalMetaImpl::CreateTable(TableSchema& table_schema) {
return Status::OK();
}
Status LocalMetaImpl::get_group(TableSchema& table_schema) {
bool group_exist;
has_group(table_schema.table_id, group_exist);
if (!group_exist) {
return Status::NotFound("Group " + table_schema.table_id + " Not Found");
Status LocalMetaImpl::DescribeTable(TableSchema& table_schema) {
bool exist;
has_group(table_schema.table_id, exist);
if (!exist) {
return Status::NotFound("Table " + table_schema.table_id + " Not Found");
}
return GetGroupMetaInfo(table_schema.table_id, table_schema);

View File

@ -19,7 +19,7 @@ public:
LocalMetaImpl(const DBMetaOptions& options_);
virtual Status CreateTable(TableSchema& table_schema) override;
virtual Status get_group(TableSchema& table_schema_) override;
virtual Status DescribeTable(TableSchema& table_schema_) override;
virtual Status has_group(const std::string& table_id_, bool& has_or_not_) override;
virtual Status add_group_file(TableFileSchema& group_file_info) override;

View File

@ -23,7 +23,7 @@ public:
using Ptr = std::shared_ptr<Meta>;
virtual Status CreateTable(TableSchema& table_schema) = 0;
virtual Status get_group(TableSchema& table_schema) = 0;
virtual Status DescribeTable(TableSchema& table_schema) = 0;
virtual Status has_group(const std::string& table_id_, bool& has_or_not_) = 0;
virtual Status add_group_file(TableFileSchema& group_file_info) = 0;

View File

@ -27,13 +27,13 @@ TEST_F(MetaTest, GROUP_TEST) {
auto gid = group.id;
group.id = -1;
status = impl_->get_group(group);
status = impl_->DescribeTable(group);
ASSERT_TRUE(status.ok());
ASSERT_EQ(group.id, gid);
ASSERT_EQ(group.table_id, table_id);
group.table_id = "not_found";
status = impl_->get_group(group);
status = impl_->DescribeTable(group);
ASSERT_TRUE(!status.ok());
group.table_id = table_id;