From b5750c50fc8348d61cd43d4fda623f6e64ddadb0 Mon Sep 17 00:00:00 2001 From: Yanbo Xu Date: Fri, 15 Dec 2017 17:10:05 -0800 Subject: [PATCH] Revert D6579707: [folly/ConcurrentHashMap] Fix erase in Iterate Summary: This reverts commit a45f47a53e106d22daa9cf57be6c40c4f6a430d9 bypass-lint Differential Revision: D6579707 fbshipit-source-id: 6f6c35de5e05f8cf37491471e1ae1272290fe61b --- folly/concurrency/ConcurrentHashMap.h | 4 +--- .../concurrency/test/ConcurrentHashMapTest.cpp | 18 ------------------ 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/folly/concurrency/ConcurrentHashMap.h b/folly/concurrency/ConcurrentHashMap.h index a2cf218a..b4d2fc3a 100644 --- a/folly/concurrency/ConcurrentHashMap.h +++ b/folly/concurrency/ConcurrentHashMap.h @@ -421,9 +421,7 @@ class ConcurrentHashMap { } ConstIterator(const ConcurrentHashMap* parent, uint64_t segment) - : it_(parent->ensureSegment(segment)->cbegin()), - segment_(segment), - parent_(parent) {} + : segment_(segment), parent_(parent) {} private: // cbegin iterator diff --git a/folly/concurrency/test/ConcurrentHashMapTest.cpp b/folly/concurrency/test/ConcurrentHashMapTest.cpp index c16985cd..b1b18e42 100644 --- a/folly/concurrency/test/ConcurrentHashMapTest.cpp +++ b/folly/concurrency/test/ConcurrentHashMapTest.cpp @@ -257,24 +257,6 @@ TEST(ConcurrentHashMap, EraseTest) { foomap.erase(f1); } -TEST(ConcurrentHashMap, EraseInIterateTest) { - ConcurrentHashMap foomap(3); - for (uint64_t k = 0; k < 10; ++k) { - foomap.insert(k, k); - } - for (auto it = foomap.cbegin(); it != foomap.cend();) { - if (it->second > 3) { - it = foomap.erase(it); - } else { - ++it; - } - } - EXPECT_EQ(4, foomap.size()); - for (auto it = foomap.cbegin(); it != foomap.cend(); ++it) { - EXPECT_GE(3, it->second); - } -} - // TODO: hazptrs must support DeterministicSchedule #define Atom std::atomic // DeterministicAtomic -- 2.34.1