Redis TODO ---------- WARNING: are you a possible Redis contributor? Before implementing what is listed in this file please drop a message in the Redis google group or chat with antirez or pietern on irc.freenode.org #redis to check if the work is already in progress and if the feature is still interesting for us, and *how* exactly this can be implemented to have good changes of a merge. Otherwise it is probably wasted work! Thank you CLUSTER ======= * Implement rehashing and cluster check in redis-trib. * Reimplement MIGRATE / RESTORE to use just in memory buffers (no disk at all). This will require touching a lot of the RDB stuff around, but we may hand with faster persistence for RDB. * Implement the slave nodes semantics and election. * Allow redis-trib to create a cluster-wide snapshot (using SYNC). * Allow redis-trib to restore a cluster-wide snapshot (implement UPLOAD?). SCRIPTING ========= * SCRIPT FLUSH or alike to start a fresh interpreter? OPTIMIZATIONS ============= * SORT: Don't copy the list into a vector when BY argument is constant. * Write the hash table size of every db in the dump, so that Redis can resize the hash table just one time when loading a big DB. * Read-only mode for slaves. * Redis big lists as linked lists of small ziplists? Possibly a simple heuristic that join near nodes when some node gets smaller than the low_level, and split it into two if gets bigger than high_level. KNOWN BUGS ========== * #519: Slave may have expired keys that were never read in the master (so a DEL is not sent in the replication channel) but are already expired since a lot of time. Maybe after a given delay that is undoubtably greater than the replication link latency we should expire this key on the slave on access?