diff options
author | Abseil Team <absl-team@google.com> | 2021-12-01 15:08:07 -0800 |
---|---|---|
committer | Andy Getz <durandal@google.com> | 2021-12-02 14:11:24 -0500 |
commit | e11e039e02ef30a98a7928ce6c59cebe096dd753 (patch) | |
tree | 40e34c4abd819883b86b423ebe5ef77b960e82af /absl/container/internal/hashtablez_sampler_test.cc | |
parent | cad715dbf375a336fcb0b2b0ef57fc2b7a1b0b4b (diff) | |
download | abseil-e11e039e02ef30a98a7928ce6c59cebe096dd753.tar.gz abseil-e11e039e02ef30a98a7928ce6c59cebe096dd753.tar.bz2 abseil-e11e039e02ef30a98a7928ce6c59cebe096dd753.zip |
Export of internal Abseil changes
--
08d99ee216b7bfac1c5182db952d4e053e5ebc31 by Abseil Team <absl-team@google.com>:
Fix race condition reported by tsan on `inline_element_size` in hashtablez.
PiperOrigin-RevId: 413520771
GitOrigin-RevId: 08d99ee216b7bfac1c5182db952d4e053e5ebc31
Change-Id: Ibd396803f04a659cfbdb8dc7ec37511643657694
Diffstat (limited to 'absl/container/internal/hashtablez_sampler_test.cc')
-rw-r--r-- | absl/container/internal/hashtablez_sampler_test.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/absl/container/internal/hashtablez_sampler_test.cc b/absl/container/internal/hashtablez_sampler_test.cc index 449619a3..a7307a20 100644 --- a/absl/container/internal/hashtablez_sampler_test.cc +++ b/absl/container/internal/hashtablez_sampler_test.cc @@ -83,7 +83,7 @@ TEST(HashtablezInfoTest, PrepareForSampling) { absl::MutexLock l(&info.init_mu); info.PrepareForSampling(); - info.inline_element_size = test_element_size; + info.inline_element_size.store(test_element_size, std::memory_order_relaxed); EXPECT_EQ(info.capacity.load(), 0); EXPECT_EQ(info.size.load(), 0); EXPECT_EQ(info.num_erases.load(), 0); @@ -95,7 +95,7 @@ TEST(HashtablezInfoTest, PrepareForSampling) { EXPECT_EQ(info.hashes_bitwise_xor.load(), 0); EXPECT_EQ(info.max_reserve.load(), 0); EXPECT_GE(info.create_time, test_start); - EXPECT_EQ(info.inline_element_size, test_element_size); + EXPECT_EQ(info.inline_element_size.load(), test_element_size); info.capacity.store(1, std::memory_order_relaxed); info.size.store(1, std::memory_order_relaxed); @@ -119,7 +119,7 @@ TEST(HashtablezInfoTest, PrepareForSampling) { EXPECT_EQ(info.hashes_bitwise_and.load(), ~size_t{}); EXPECT_EQ(info.hashes_bitwise_xor.load(), 0); EXPECT_EQ(info.max_reserve.load(), 0); - EXPECT_EQ(info.inline_element_size, test_element_size); + EXPECT_EQ(info.inline_element_size.load(), test_element_size); EXPECT_GE(info.create_time, test_start); } @@ -162,7 +162,7 @@ TEST(HashtablezInfoTest, RecordErase) { HashtablezInfo info; absl::MutexLock l(&info.init_mu); info.PrepareForSampling(); - info.inline_element_size = test_element_size; + info.inline_element_size.store(test_element_size); EXPECT_EQ(info.num_erases.load(), 0); EXPECT_EQ(info.size.load(), 0); RecordInsertSlow(&info, 0x0000FF00, 6 * kProbeLength); @@ -170,7 +170,7 @@ TEST(HashtablezInfoTest, RecordErase) { RecordEraseSlow(&info); EXPECT_EQ(info.size.load(), 0); EXPECT_EQ(info.num_erases.load(), 1); - EXPECT_EQ(info.inline_element_size, test_element_size); + EXPECT_EQ(info.inline_element_size.load(), test_element_size); } TEST(HashtablezInfoTest, RecordRehash) { @@ -178,7 +178,7 @@ TEST(HashtablezInfoTest, RecordRehash) { HashtablezInfo info; absl::MutexLock l(&info.init_mu); info.PrepareForSampling(); - info.inline_element_size = test_element_size; + info.inline_element_size.store(test_element_size); RecordInsertSlow(&info, 0x1, 0); RecordInsertSlow(&info, 0x2, kProbeLength); RecordInsertSlow(&info, 0x4, kProbeLength); @@ -197,7 +197,7 @@ TEST(HashtablezInfoTest, RecordRehash) { EXPECT_EQ(info.total_probe_length.load(), 3); EXPECT_EQ(info.num_erases.load(), 0); EXPECT_EQ(info.num_rehashes.load(), 1); - EXPECT_EQ(info.inline_element_size, test_element_size); + EXPECT_EQ(info.inline_element_size.load(), test_element_size); } TEST(HashtablezInfoTest, RecordReservation) { |