| 37 | } |
| 38 | |
| 39 | void ChunkMgr::AddChunkProto(const ChunkProto& chunk) { |
| 40 | std::unique_lock<std::mutex> guard(mutex_); |
| 41 | const int64_t mem_zone_uid = memory::GetUniqueMemCaseId(chunk.machine_id(), chunk.mem_case()); |
| 42 | CHECK( |
| 43 | chunk_id2chunk_proto_.emplace(chunk.chunk_id(), std::make_unique<ChunkProto>(chunk)).second); |
| 44 | auto chunk_ids_it = mzuid2chunk_ids_.find(mem_zone_uid); |
| 45 | if (chunk_ids_it == mzuid2chunk_ids_.end()) { |
| 46 | chunk_ids_it = mzuid2chunk_ids_.emplace(mem_zone_uid, HashSet<int64_t>()).first; |
| 47 | } |
| 48 | CHECK(chunk_ids_it->second.insert(chunk.chunk_id()).second); |
| 49 | } |
| 50 | |
| 51 | char* ChunkMgr::FindOrCreateChunk(const ChunkProto& chunk) { |
| 52 | std::unique_lock<std::mutex> guard(mutex_); |
no test coverage detected