fix empty file put

This commit is contained in:
andrew (from workstation) 2020-05-17 10:50:12 +02:00
parent aa2bdf02d8
commit af85613bcf

View File

@ -3721,22 +3721,31 @@ void FileManager::memory_cleanup() {
if (time - file_id_insert_time_[i] > 5 /* MAIN FILE TTL */) {
for (auto &file_id : node->file_ids_) {
/* DESTROY QUERIES */
/* DESTROY ASSOCIATED QUERIES */
for (auto &query_id : queries_container_.ids()) {
auto query = queries_container_.get(query_id);
if (((int32) i) == query->file_id_.get()) {
on_error(query_id, Status::Error(500, "FILE_MANAGER_RESTART"));
if (file_id.get() == query->file_id_.get()) {
on_error(query_id, Status::Error(500, "FILE_MANAGER_RESTART_REF"));
}
}
/* DESTROY FILE */
/* DESTROY ASSOCIATED FILE */
try_forget_file_id(file_id);
}
/* DESTROY MAIN FILE */
/* DESTROY MAIN QUERY */
for (auto &query_id : queries_container_.ids()) {
auto query = queries_container_.get(query_id);
if (((int32) i) == query->file_id_.get()) {
on_error(query_id, Status::Error(500, "FILE_MANAGER_RESTART_MAIN"));
}
}
/* DESTROY FILE */
file_id_insert_time_[i] = INT64_MAX;
file_id_info_[i] = FileIdInfo();
file_nodes_[file_id_info_[i].node_id_] = nullptr;
empty_file_ids_.push_back(i);
}
}
}