Tags: google/re2j
Tags
Eliminate TSAN error in benign race condition In the following condition, a race condition occurs: ``` Thread A, B, and C all attempt to do a match on the same pattern. A: Allocates Machine 1; executes match; put machine 1. State is now: pooled -> machine 1 -> null B reads pooled, sees machine 1 C reads pooled, sees machine 1 B successfully CASes pooled to null B executes match; put machine 1, which involves setting machine1.next to null (even though it's already null); preempted before CAS C resumes, and reads machine1.next in order to execute cas(head, head.next) There is no happens-before relationship between B's redundant null write and C's read, thus triggering TSAN. ``` There is no consequence to the race, but the error is a nuisance. This should eliminate the error.
< 945B a href="/google/re2j/releases/tag/re2j-1.3" data-view-component="true" class="Link--primary Link">re2j-1.3
Release version 1.3 Updated bintray plugin version to 1.8.1, release wouldn't succeed without it. Fixed an issue where we had two release name variables for some reason.