import com.google.common.util.concurrent.FluentFuture;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.MoreExecutors;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.lang.invoke.MethodHandles;
import java.lang.invoke.VarHandle;
import java.util.Map;
// This VarHandle is used to manipulate the "ready" transaction. We perform only atomic get-and-set on it.
private static final VarHandle READY_TX;
@SuppressWarnings("unused")
+ @SuppressFBWarnings(value = "UUF_UNUSED_FIELD", justification = "https://github.com/spotbugs/spotbugs/issues/2749")
private volatile PingPongTransaction readyTx;
/*
* detect when a user is attempting to allocated multiple transactions concurrently.
*/
private static final VarHandle LOCKED_TX;
+ @SuppressFBWarnings(value = "UWF_UNWRITTEN_FIELD",
+ justification = "https://github.com/spotbugs/spotbugs/issues/2749")
private volatile PingPongTransaction lockedTx;
/*
* time. We perform only compare-and-swap on these.
*/
private static final VarHandle INFLIGHT_TX;
+ @SuppressFBWarnings(value = "UWF_UNWRITTEN_FIELD",
+ justification = "https://github.com/spotbugs/spotbugs/issues/2749")
private volatile PingPongTransaction inflightTx;
static {