/** Constants for object loading bitfield flags (higher => higher QoS) */
/** @var int Read from a replica DB/non-quorum */
const READ_NORMAL = 0;
+
/** @var int Read from the master/quorum */
const READ_LATEST = 1;
+
/* @var int Read from the master/quorum and lock out other writers */
- const READ_LOCKING = 3; // READ_LATEST (1) and "LOCK IN SHARE MODE" (2)
+ const READ_LOCKING = self::READ_LATEST | 2; // READ_LATEST (1) and "LOCK IN SHARE MODE" (2)
+
/** @var int Read from the master/quorum and lock out other writers and locking readers */
- const READ_EXCLUSIVE = 7; // READ_LOCKING (3) and "FOR UPDATE" (4)
+ const READ_EXCLUSIVE = self::READ_LOCKING | 4; // READ_LOCKING (3) and "FOR UPDATE" (4)
/** @var int Read from a replica DB or without a quorum, using the master/quorum on miss */
const READ_LATEST_IMMUTABLE = 8;