提交 7fe5346f 编写于 作者: X Xu Peng

refactor(db): Archive


Former-commit-id: 21f153c1a57ad4bb706f6b177a10d45faf88ed99
上级 de8811ae
...@@ -312,7 +312,7 @@ Status DBImpl<EngineT>::background_merge_files(const std::string& table_id) { ...@@ -312,7 +312,7 @@ Status DBImpl<EngineT>::background_merge_files(const std::string& table_id) {
merge_files(table_id, kv.first, kv.second); merge_files(table_id, kv.first, kv.second);
} }
_pMeta->archive_files(); _pMeta->Archive();
try_build_index(); try_build_index();
...@@ -350,7 +350,7 @@ Status DBImpl<EngineT>::build_index(const meta::TableFileSchema& file) { ...@@ -350,7 +350,7 @@ Status DBImpl<EngineT>::build_index(const meta::TableFileSchema& file) {
<< " from file " << to_remove.file_id; << " from file " << to_remove.file_id;
index->Cache(); index->Cache();
_pMeta->archive_files(); _pMeta->Archive();
return Status::OK(); return Status::OK();
} }
......
...@@ -433,7 +433,7 @@ Status DBMetaImpl::GetTableFile(TableFileSchema& file_schema) { ...@@ -433,7 +433,7 @@ Status DBMetaImpl::GetTableFile(TableFileSchema& file_schema) {
} }
// PXU TODO: Support Swap // PXU TODO: Support Swap
Status DBMetaImpl::archive_files() { Status DBMetaImpl::Archive() {
auto& criterias = _options.archive_conf.GetCriterias(); auto& criterias = _options.archive_conf.GetCriterias();
if (criterias.size() == 0) { if (criterias.size() == 0) {
return Status::OK(); return Status::OK();
...@@ -496,7 +496,7 @@ Status DBMetaImpl::Size(long& result) { ...@@ -496,7 +496,7 @@ Status DBMetaImpl::Size(long& result) {
} }
Status DBMetaImpl::discard_files_of_size(long to_discard_size) { Status DBMetaImpl::discard_files_of_size(long to_discard_size) {
LOG(DEBUG) << "Abort to discard size=" << to_discard_size; LOG(DEBUG) << "About to discard size=" << to_discard_size;
if (to_discard_size <= 0) { if (to_discard_size <= 0) {
return Status::OK(); return Status::OK();
} }
...@@ -507,15 +507,15 @@ Status DBMetaImpl::discard_files_of_size(long to_discard_size) { ...@@ -507,15 +507,15 @@ Status DBMetaImpl::discard_files_of_size(long to_discard_size) {
order_by(&TableFileSchema::id), order_by(&TableFileSchema::id),
limit(10)); limit(10));
std::vector<int> ids; std::vector<int> ids;
TableFileSchema table_file;
for (auto& file : selected) { for (auto& file : selected) {
if (to_discard_size <= 0) break; if (to_discard_size <= 0) break;
TableFileSchema group_file; table_file.id = std::get<0>(file);
group_file.id = std::get<0>(file); table_file.size = std::get<1>(file);
group_file.size = std::get<1>(file); ids.push_back(table_file.id);
ids.push_back(group_file.id); LOG(DEBUG) << "Discard table_file.id=" << table_file.file_id << " table_file.size=" << table_file.size;
LOG(DEBUG) << "Discard group_file.id=" << group_file.id << " group_file.size=" << group_file.size; to_discard_size -= table_file.size;
to_discard_size -= group_file.size;
} }
if (ids.size() == 0) { if (ids.size() == 0) {
......
...@@ -42,7 +42,7 @@ public: ...@@ -42,7 +42,7 @@ public:
virtual Status files_to_index(TableFilesSchema&) override; virtual Status files_to_index(TableFilesSchema&) override;
virtual Status archive_files() override; virtual Status Archive() override;
virtual Status Size(long& result) override; virtual Status Size(long& result) override;
......
...@@ -44,7 +44,7 @@ public: ...@@ -44,7 +44,7 @@ public:
virtual Status Size(long& result) = 0; virtual Status Size(long& result) = 0;
virtual Status archive_files() = 0; virtual Status Archive() = 0;
virtual Status files_to_index(TableFilesSchema&) = 0; virtual Status files_to_index(TableFilesSchema&) = 0;
......
...@@ -123,7 +123,7 @@ TEST_F(MetaTest, ARCHIVE_TEST_DAYS) { ...@@ -123,7 +123,7 @@ TEST_F(MetaTest, ARCHIVE_TEST_DAYS) {
days.push_back(day); days.push_back(day);
} }
impl.archive_files(); impl.Archive();
int i = 0; int i = 0;
for (auto file : files) { for (auto file : files) {
...@@ -166,7 +166,7 @@ TEST_F(MetaTest, ARCHIVE_TEST_DISK) { ...@@ -166,7 +166,7 @@ TEST_F(MetaTest, ARCHIVE_TEST_DISK) {
files.push_back(table_file); files.push_back(table_file);
} }
impl.archive_files(); impl.Archive();
int i = 0; int i = 0;
for (auto file : files) { for (auto file : files) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册