Github user joewitt commented on the issue:
https://github.com/apache/nifi/pull/2657
fields being volatile can be fine. volatile makes a more explicit
assertion about how java will guarantee the value to be read across threads.
The issue, at least from a quick look, is the potential race condition between
when it is checked versus when it is set. I belive it looked like more than
ine thread could get through the check.
It needs to be looked into more and if necessary just protected for the
whole check/set operation to be guarded by a lock.
---