Skip to content

Compatibility with upstream

A per-protocol scorecard against the latest released versions of the upstream projects.

memcached (text + binary + meta)

Reference: memcached 1.6.x.

Area Status
Text storage commands Full
Text retrieval commands (get / gets) Full
Text TTL family (touch / gat / gats) Full
Text deletion Full
Text arithmetic (incr / decr) Full
Text flush_all (with delay) Full
Text stats (no sub) Full
Text stats settings Synthetic (subset of settings)
Text stats items Synthetic (single LRU class)
Text stats slabs Synthetic (one virtual class)
Text stats sizes Synthetic (single bucket)
Text stats conns Empty (no connection registry)
Text stats reset Acknowledged, no-op
Text cache_memlimit Full
Text verbosity No-op (fastcached uses ILogger)
Text shutdown Not supported
Text slabs reassign / slabs automove Stub returns OK
Text lru tune / lru mode Stub returns OK
Text lru_crawler Stub returns OK
Text watch Not supported (see Known limitations)
Binary Get / GetQ / GetK / GetKQ Full
Binary Set / Add / Replace and Q variants Full
Binary Append / Prepend and Q variants Full
Binary Delete / DeleteQ Full
Binary Increment / Decrement (+ auto-vivify) Full
Binary Touch / GAT / GATQ / GATK / GATKQ Full
Binary Flush / FlushQ Full
Binary Version / NoOp / Quit / QuitQ Full
Binary Stat Full
Binary Verbosity Accepted, no-op
Binary SASL Rejected with AuthError
Meta mg / ms / md / ma / me / mn Full
Meta flags (c f h k l O q s t u v T N on mg; c C F I k M N O q s T on ms; C I k O q T on md; c C D J k M N O q t T v on ma) Full
Meta flags b (base64 key) / E (CAS override) / R (recache) / x (keep-metadata) Accepted but ignored (parsed past, not acted on)

Redis (RESP2)

Reference: Redis 7.x, RESP2 subset only.

Area Status
GET Full
SET (with EX, PX, NX, XX) Full
SETEX Full
PSETEX Full
DEL Full
UNLINK Full (synonym for DEL)
EXISTS Full
PING Full
ECHO Full
INFO Full
HELLO 2 Full
HELLO 3 (RESP3) Rejected with -NOPROTO
COMMAND Full
FLUSHDB / FLUSHALL Full
QUIT Full
AUTH Rejected (no auth backend)
SELECT No-op for any index (single keyspace; always +OK)
CLIENT Connection-setup stub (SETNAME/SETINFO/ID/GETNAME)
CONFIG Stub (CONFIG GET reports 0 per param; others reply +OK)
Other Redis commands Not supported (see Unsupported Redis commands)

This is a deliberate subset chosen to cover the sccache / key-value-cache use case. Expanding the Redis surface is tracked as a separate effort and not included in the current scope.

What "full" means here

For an item marked Full, fastcached parses and honors the command as the upstream spec describes — including the edge cases listed in the per-command page. Where fastcached's storage model differs from upstream's (no slabs, single keyspace, no SASL backend), the affected commands are marked Synthetic, Stub, Rejected, or Not supported rather than Full.