diff options
Diffstat (limited to 'zenstore/compactcas.cpp')
| -rw-r--r-- | zenstore/compactcas.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/zenstore/compactcas.cpp b/zenstore/compactcas.cpp index 1dd1a3906..1ade002d8 100644 --- a/zenstore/compactcas.cpp +++ b/zenstore/compactcas.cpp @@ -282,6 +282,7 @@ namespace { CasLog.Open(SlogPath, CasLogFile::EMode::kRead); if (CasLog.Initialize()) { + Entries.reserve(CasLog.GetLogCount()); CasLog.Replay([&](const CasDiskIndexEntry& Record) { Entries.push_back(Record); }); } } @@ -359,6 +360,7 @@ namespace { }); if (LegacyCasLog.Initialize()) { + LegacyDiskIndex.reserve(LegacyCasLog.GetLogCount()); LegacyCasLog.Replay([&](const LegacyCasDiskIndexEntry& Record) { std::string InvalidEntryReason; if (Record.Flags & LegacyCasDiskIndexEntry::kTombstone) @@ -1410,9 +1412,11 @@ CasContainerStrategy::MakeIndexSnapshot() { TCasLogFile<CasDiskIndexEntry> OldCasLog; OldCasLog.Open(STmplogPath, CasLogFile::EMode::kRead); + Records.reserve(OldCasLog.GetLogCount()); OldCasLog.Replay([&](const CasDiskIndexEntry& Record) { Records.push_back(Record); }); } { + Records.reserve(Records.size() + m_CasLog.GetLogCount()); m_CasLog.Replay([&](const CasDiskIndexEntry& Record) { Records.push_back(Record); }); } @@ -2316,6 +2320,7 @@ TEST_CASE("compactcas.legacyconversion") { TCasLogFile<CasDiskIndexEntry> CasLog; CasLog.Open(SlogPath, CasLogFile::EMode::kRead); + LogEntries.reserve(CasLog.GetLogCount()); CasLog.Replay([&](const CasDiskIndexEntry& Record) { LogEntries.push_back(Record); }); } TCasLogFile<LegacyCasDiskIndexEntry> LegacyCasLog; |