From: Aaron Schulz Date: Tue, 26 Mar 2019 18:16:38 +0000 (-0700) Subject: objectcache: improve comments for ATTR_/QOS_ constants X-Git-Tag: 1.34.0-rc.0~2331^2 X-Git-Url: https://git.cyclocoop.org/admin/Duna?a=commitdiff_plain;h=fce8f37378762ded65c16b190a82bc0d1cfcc474;p=lhc%2Fweb%2Fwiklou.git objectcache: improve comments for ATTR_/QOS_ constants Change-Id: Iaa5361a09e1dc559fee8eb034c9c05bc999c776e --- diff --git a/includes/libs/objectcache/IExpiringStore.php b/includes/libs/objectcache/IExpiringStore.php index c1edff794d..61a4c618cf 100644 --- a/includes/libs/objectcache/IExpiringStore.php +++ b/includes/libs/objectcache/IExpiringStore.php @@ -21,7 +21,7 @@ */ /** - * Generic base class for storage interfaces. + * Generic interface for lightweight expiring object stores. * * Provides convenient TTL constants. * @@ -44,16 +44,19 @@ interface IExpiringStore { const TTL_INDEFINITE = 0; - // Attribute and QoS constants; higher QOS values with the same prefix rank higher... - // Medium attributes constants related to emulation or media type + // Emulation/fallback medium attribute (e.g. SQLBagOStuff) const ATTR_EMULATION = 1; + // Quality of service constants for ATTR_EMULATION (higher means faster) const QOS_EMULATION_SQL = 1; - // Medium attributes constants related to replica consistency - const ATTR_SYNCWRITES = 2; // SYNC_WRITES flag support + + // Replica synchronization/consistency attribute of medium when SYNC_WRITES is used + const ATTR_SYNCWRITES = 2; + // Quality of service constants for ATTR_SYNCWRITES (higher means more consistent) const QOS_SYNCWRITES_NONE = 1; // replication only supports eventual consistency or less const QOS_SYNCWRITES_BE = 2; // best effort synchronous with limited retries const QOS_SYNCWRITES_QC = 3; // write quorum applied directly to state machines where R+W > N const QOS_SYNCWRITES_SS = 4; // strict-serializable, nodes refuse reads if possible stale + // Generic "unknown" value that is useful for comparisons (e.g. always good enough) const QOS_UNKNOWN = INF;