refactor(db): FilesToIndex

Former-commit-id: fe5bd8ca372d0a4d5bf257f3f10853179d2356ce
pull/191/head
Xu Peng 2019-05-27 19:10:49 +08:00
parent 7fe5346f14
commit 874eeb8f7a
5 changed files with 19 additions and 19 deletions

View File

@ -360,7 +360,7 @@ void DBImpl<EngineT>::background_build_index() {
std::lock_guard<std::mutex> lock(build_index_mutex_); std::lock_guard<std::mutex> lock(build_index_mutex_);
assert(bg_build_index_started_); assert(bg_build_index_started_);
meta::TableFilesSchema to_index_files; meta::TableFilesSchema to_index_files;
_pMeta->files_to_index(to_index_files); _pMeta->FilesToIndex(to_index_files);
Status status; Status status;
for (auto& file : to_index_files) { for (auto& file : to_index_files) {
/* LOG(DEBUG) << "Buiding index for " << file.location; */ /* LOG(DEBUG) << "Buiding index for " << file.location; */

View File

@ -259,7 +259,7 @@ Status DBMetaImpl::CreateTableFile(TableFileSchema& file_schema) {
return Status::OK(); return Status::OK();
} }
Status DBMetaImpl::files_to_index(TableFilesSchema& files) { Status DBMetaImpl::FilesToIndex(TableFilesSchema& files) {
files.clear(); files.clear();
try { try {
@ -272,28 +272,28 @@ Status DBMetaImpl::files_to_index(TableFilesSchema& files) {
where(c(&TableFileSchema::file_type) == (int)TableFileSchema::TO_INDEX)); where(c(&TableFileSchema::file_type) == (int)TableFileSchema::TO_INDEX));
std::map<std::string, TableSchema> groups; std::map<std::string, TableSchema> groups;
TableFileSchema table_file;
for (auto& file : selected) { for (auto& file : selected) {
TableFileSchema group_file; table_file.id = std::get<0>(file);
group_file.id = std::get<0>(file); table_file.table_id = std::get<1>(file);
group_file.table_id = std::get<1>(file); table_file.file_id = std::get<2>(file);
group_file.file_id = std::get<2>(file); table_file.file_type = std::get<3>(file);
group_file.file_type = std::get<3>(file); table_file.size = std::get<4>(file);
group_file.size = std::get<4>(file); table_file.date = std::get<5>(file);
group_file.date = std::get<5>(file); GetGroupFilePath(table_file);
GetGroupFilePath(group_file); auto groupItr = groups.find(table_file.table_id);
auto groupItr = groups.find(group_file.table_id);
if (groupItr == groups.end()) { if (groupItr == groups.end()) {
TableSchema table_schema; TableSchema table_schema;
table_schema.table_id = group_file.table_id; table_schema.table_id = table_file.table_id;
auto status = DescribeTable(table_schema); auto status = DescribeTable(table_schema);
if (!status.ok()) { if (!status.ok()) {
return status; return status;
} }
groups[group_file.table_id] = table_schema; groups[table_file.table_id] = table_schema;
} }
group_file.dimension = groups[group_file.table_id].dimension; table_file.dimension = groups[table_file.table_id].dimension;
files.push_back(group_file); files.push_back(table_file);
} }
} catch (std::exception & e) { } catch (std::exception & e) {
LOG(DEBUG) << e.what(); LOG(DEBUG) << e.what();

View File

@ -40,7 +40,7 @@ public:
virtual Status FilesToMerge(const std::string& table_id, virtual Status FilesToMerge(const std::string& table_id,
DatePartionedTableFilesSchema& files) override; DatePartionedTableFilesSchema& files) override;
virtual Status files_to_index(TableFilesSchema&) override; virtual Status FilesToIndex(TableFilesSchema&) override;
virtual Status Archive() override; virtual Status Archive() override;

View File

@ -46,7 +46,7 @@ public:
virtual Status Archive() = 0; virtual Status Archive() = 0;
virtual Status files_to_index(TableFilesSchema&) = 0; virtual Status FilesToIndex(TableFilesSchema&) = 0;
virtual Status cleanup() = 0; virtual Status cleanup() = 0;
virtual Status cleanup_ttl_files(uint16_t) = 0; virtual Status cleanup_ttl_files(uint16_t) = 0;

View File

@ -224,7 +224,7 @@ TEST_F(MetaTest, TABLE_FILES_TEST) {
meta::TableFilesSchema files; meta::TableFilesSchema files;
status = impl_->files_to_index(files); status = impl_->FilesToIndex(files);
ASSERT_TRUE(status.ok()); ASSERT_TRUE(status.ok());
ASSERT_EQ(files.size(), to_index_files_cnt); ASSERT_EQ(files.size(), to_index_files_cnt);
@ -233,7 +233,7 @@ TEST_F(MetaTest, TABLE_FILES_TEST) {
ASSERT_TRUE(status.ok()); ASSERT_TRUE(status.ok());
ASSERT_EQ(dated_files[table_file.date].size(), raw_files_cnt); ASSERT_EQ(dated_files[table_file.date].size(), raw_files_cnt);
status = impl_->files_to_index(files); status = impl_->FilesToIndex(files);
ASSERT_TRUE(status.ok()); ASSERT_TRUE(status.ok());
ASSERT_EQ(files.size(), to_index_files_cnt); ASSERT_EQ(files.size(), to_index_files_cnt);