Merge pull request #24280 from veblush/ev-libuv-fix

Skip eventmanager_libuv_test under TSAN
pull/24305/head
Esun Kim 5 years ago committed by GitHub
commit cdb3b827a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      test/core/iomgr/poller/BUILD
  2. 4
      test/core/iomgr/poller/eventmanager_libuv_test.cc

@ -28,6 +28,11 @@ grpc_cc_test(
"gtest",
],
language = "C++",
tags = [
# TSAN has a false-positive for ShutdownRefAsync
# https://github.com/grpc/grpc/issues/24242
"notsan",
],
uses_polling = False,
deps = [
"//:eventmanager_libuv",

@ -58,6 +58,10 @@ TEST(LibuvEventManager, ShutdownRefAsync) {
for (int j = 0; j < i; j++) {
em->ShutdownRef();
}
// TSAN doesn't like this approach although this would work. TSAN considers
// it dangerous to have a destructor being called while its member function
// is called but LibuvEventManager handles this by making LibuvEventManager
// wait until all pending operations finish.
grpc_core::Thread deleter(
"deleter", [](void* em) { delete static_cast<LibuvEventManager*>(em); },
em);

Loading…
Cancel
Save