X-Git-Url: http://git.cyclocoop.org/data/Luca_Pacioli_%28Gemaelde%29.jpeg?a=blobdiff_plain;f=includes%2Flibs%2Fobjectcache%2FIExpiringStore.php;h=1566c07925e20b2169976579a54657fddd74684b;hb=6428a5cb53e646ff4a15da19fb01052f92c1bc7a;hp=c1edff794dbe6d95d420f563345831274735af71;hpb=ba32e133e97b0f1f6b9ddb7e3c7a9cc79d0be977;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/libs/objectcache/IExpiringStore.php b/includes/libs/objectcache/IExpiringStore.php index c1edff794d..1566c07925 100644 --- a/includes/libs/objectcache/IExpiringStore.php +++ b/includes/libs/objectcache/IExpiringStore.php @@ -17,11 +17,10 @@ * * @file * @ingroup Cache - * @author 2015 Timo Tijhof */ /** - * Generic base class for storage interfaces. + * Generic interface for lightweight expiring object stores. * * Provides convenient TTL constants. * @@ -44,16 +43,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;