Open-Source Wikis

/

Redis

/

Primitives

redis/redis

Primitives

The data structures that back Redis's user-visible types. These pages describe the implementations under src/, not the type APIs.

Primitive Source Used by
SDS — Simple Dynamic String src/sds.c, src/sds.h Everywhere strings show up. Keys, values, query buffer, output buffers.
robj — the value wrapper src/object.c, src/object.h Every value in the keyspace.
dict — incremental hash table src/dict.c, src/dict.h Every keyspace dict, plus per-type internal indices.
kvstore — slot-aware dict array src/kvstore.c, src/kvstore.h The per-DB key store.
Listpack & quicklist src/listpack.c, src/quicklist.c Lists, small sets, small hashes, small zsets, stream nodes.
Intset src/intset.c Sorted integer-only sets.
Rax — compressed radix tree src/rax.c, src/rax.h Stream id index; some internal tables.
ebuckets src/ebuckets.c, src/ebuckets.h TTL storage.
Stream radix src/t_stream.c, src/stream.h, src/listpack.c, src/rax.c Stream entries.
Other primitives src/adlist.c (linked list), src/ziplist.c (legacy), src/zipmap.c (legacy), src/mstr.c, src/sparkline.c, src/rand.c, src/sha1.c, src/sha256.c, src/siphash.c, src/crc*.c, src/lzf_*.c, src/fast_float_strtod.c, src/keymeta.c, src/entry.c, src/fwtree.c, src/estore.c, src/gcra.c, src/vector.c, src/hotkeys.c Various.

The primitives are deliberately small and self-contained. Each has its own embedded C tests under #ifdef REDIS_TEST so they can be exercised standalone via redis-server test <name>. See Testing.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Primitives – Redis wiki | Factory