Fix unstable cpp ut (#28083)

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
pull/28055/head
yihao.dai 2023-11-02 00:58:16 +08:00 committed by GitHub
parent 854c0e8a16
commit 873b29e226
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 13 deletions

View File

@ -40,7 +40,6 @@ ChunkCache::Read(const std::string& filepath) {
strerror(errno)));
columns_.emplace(path, column);
mmap_file_locks_.erase(path);
return column;
}
@ -71,13 +70,7 @@ ChunkCache::Prefetch(const std::string& filepath) {
std::shared_ptr<ColumnBase>
ChunkCache::Mmap(const std::filesystem::path& path,
const FieldDataPtr& field_data) {
MmapFileLocks::accessor acc;
if (!mmap_file_locks_.find(acc, path)) {
mmap_file_locks_.insert(
acc, std::make_pair(path, std::make_unique<std::mutex>()));
}
std::unique_lock lck(*acc->second.get());
acc.release();
std::unique_lock lck(mutex_);
auto dir = path.parent_path();
std::filesystem::create_directories(dir);

View File

@ -61,12 +61,8 @@ class ChunkCache {
oneapi::tbb::concurrent_hash_map<std::string,
std::shared_ptr<ColumnBase>>;
using MmapFileLocks =
oneapi::tbb::concurrent_hash_map<std::string,
std::unique_ptr<std::mutex>>;
private:
MmapFileLocks mmap_file_locks_;
mutable std::mutex mutex_;
int read_ahead_policy_;
std::string path_prefix_;
ChunkManagerPtr cm_;