Merge checks into one (#8138)
Summary: Pull Request resolved: https://github.com/facebook/rocksdb/pull/8138 Reviewed By: zhichao-cao Differential Revision: D27475616 Pulled By: riversand963 fbshipit-source-id: d2815eed578a90c53d6a4e0dc4aaa232516eb4f8
This commit is contained in:
parent
1ba2b8a568
commit
a3a943bf63
@ -40,16 +40,25 @@ Status ExternalSstFileIngestionJob::Prepare(
|
|||||||
if (!status.ok()) {
|
if (!status.ok()) {
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
files_to_ingest_.push_back(file_to_ingest);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (const IngestedFileInfo& f : files_to_ingest_) {
|
if (file_to_ingest.cf_id !=
|
||||||
if (f.cf_id !=
|
|
||||||
TablePropertiesCollectorFactory::Context::kUnknownColumnFamily &&
|
TablePropertiesCollectorFactory::Context::kUnknownColumnFamily &&
|
||||||
f.cf_id != cfd_->GetID()) {
|
file_to_ingest.cf_id != cfd_->GetID()) {
|
||||||
return Status::InvalidArgument(
|
return Status::InvalidArgument(
|
||||||
"External file column family id don't match");
|
"External file column family id don't match");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (file_to_ingest.num_entries == 0 &&
|
||||||
|
file_to_ingest.num_range_deletions == 0) {
|
||||||
|
return Status::InvalidArgument("File contain no entries");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!file_to_ingest.smallest_internal_key.Valid() ||
|
||||||
|
!file_to_ingest.largest_internal_key.Valid()) {
|
||||||
|
return Status::Corruption("Generated table have corrupted keys");
|
||||||
|
}
|
||||||
|
|
||||||
|
files_to_ingest_.emplace_back(std::move(file_to_ingest));
|
||||||
}
|
}
|
||||||
|
|
||||||
const Comparator* ucmp = cfd_->internal_comparator().user_comparator();
|
const Comparator* ucmp = cfd_->internal_comparator().user_comparator();
|
||||||
@ -83,16 +92,6 @@ Status ExternalSstFileIngestionJob::Prepare(
|
|||||||
return Status::NotSupported("Files have overlapping ranges");
|
return Status::NotSupported("Files have overlapping ranges");
|
||||||
}
|
}
|
||||||
|
|
||||||
for (IngestedFileInfo& f : files_to_ingest_) {
|
|
||||||
if (f.num_entries == 0 && f.num_range_deletions == 0) {
|
|
||||||
return Status::InvalidArgument("File contain no entries");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!f.smallest_internal_key.Valid() || !f.largest_internal_key.Valid()) {
|
|
||||||
return Status::Corruption("Generated table have corrupted keys");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copy/Move external files into DB
|
// Copy/Move external files into DB
|
||||||
std::unordered_set<size_t> ingestion_path_ids;
|
std::unordered_set<size_t> ingestion_path_ids;
|
||||||
for (IngestedFileInfo& f : files_to_ingest_) {
|
for (IngestedFileInfo& f : files_to_ingest_) {
|
||||||
|
Loading…
Reference in New Issue
Block a user