Todd Lipcon has submitted this change and it was merged. Change subject: Fix some TSAN failures seen on GCE ......................................................................
Fix some TSAN failures seen on GCE This fixes a few TSAN issues that I've seen while testing on GCE: - Add suppression for epoll_ctl libev is missing TSAN annotations and thus its synchronization doesn't get registered as "happens-before" relationships. This can cause spurious TSAN errors relating to epoll file descriptors. Before this suppression, I saw 8/100 runs of DeleteTableTest TSAN fail with such a race. - Make churny election test a little less churny on TSAN The TestChurnyElections test sets timeouts to 1ms. On TSAN on GCE instances this is often failing because it doesn't make any progress at all. This patch sets the election timeout to 5ms instead of 1ms and also disables fsync, which is a bit slower on GCE due to storage being remote. - Increase timeout waiting for WALs in some integration tests This fixes some flakiness in delete_table-test TSAN builds where writes were going slowly enough that we didn't reach the desired number of WALs within 30 seconds. After doubling to 60 seconds, I didn't see failures. - Bump test workload write timeout to 50ms in memory limit test With a 10ms timeout, the client was often unable to even connect to the server to start any transactions in TSAN builds. Bumping to 50ms makes the test much more reliable. - Add TSAN annotations around iterator stats We assume that iterator stats can be fuzzy and don't want to add barriers on the write side. This patch adds an IGNORE annotation around reading the stats. Change-Id: Idb7447b9b88c37a45be3840d5b24edafc237ad51 Reviewed-on: http://gerrit.cloudera.org:8080/1793 Reviewed-by: Adar Dembo <[email protected]> Tested-by: Internal Jenkins --- M build-support/tsan-suppressions.txt M src/kudu/integration-tests/external_mini_cluster_fs_inspector.h M src/kudu/integration-tests/raft_consensus-itest.cc M src/kudu/tablet/cfile_set.cc 4 files changed, 13 insertions(+), 2 deletions(-) Approvals: Internal Jenkins: Verified Adar Dembo: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/1793 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: Idb7447b9b88c37a45be3840d5b24edafc237ad51 Gerrit-PatchSet: 4 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Todd Lipcon <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Dan Burkert <[email protected]> Gerrit-Reviewer: Internal Jenkins Gerrit-Reviewer: Mike Percy <[email protected]> Gerrit-Reviewer: Todd Lipcon <[email protected]>
