X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/04a2ade90dd15db2a1e685e2e045b8c0181b9eea..d5870d7ac3c4618bca373137559cb7c03c66e17d:/TODO diff --git a/TODO b/TODO index 9e6b0561..edcd2b32 100644 --- a/TODO +++ b/TODO @@ -9,20 +9,22 @@ WARNING: are you a possible Redis contributor? us, and *how* exactly this can be implemented to have good changes of a merge. Otherwise it is probably wasted work! Thank you -VM TODO -======= +DISKSTORE TODO +============== -* Use multiple open FDs against the VM file, one for thread. -* Check what happens performance-wise if instead of creating threads again and again the same threads are reused forever. Note: this requires a way to disable this clients in the child, but waiting for empty new jobs queue can be enough. -* mmap the swap file. -* Use just a single IO Job to swap out a key, and add a mutex so that pages in the page table can be marked as used and scanned from the thread itself. +* Check that 00/00 and ff/ff exist at startup, otherwise exit with error. +* Implement sync flush option, where data is written synchronously on disk when a command is executed. +* Implement MULTI/EXEC as transaction abstract API to diskstore.c, with transaction_start, transaction_end, and a journal to recover. +* Stop BGSAVE thread on shutdown and any other condition where the child is killed during normal bgsave. +* Fix RANDOMKEY to really do something interesting +* Fix DBSIZE to really do something interesting +* Add a DEBUG command to check if an entry is or not in memory currently -REPLICATION -=========== +APPEND ONLY FILE +================ -* PING between master and slave from time to time, so we can subject the -master-slave link to timeout, and detect when the connection is gone even -if the socket is still up. +* in AOF rewirte use HMSET to rewrite small hashes instead of multiple calls + to HSET. OPTIMIZATIONS ============= @@ -31,6 +33,17 @@ OPTIMIZATIONS * 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. +REPORTING +========= + +* Better INFO output with sections. + +RANDOM +====== + +* Clients should be closed as far as the output buffer list is bigger than a given number of elements (configurable in redis.conf) +* Should the redis default configuration, and the default redis.conf, just bind 127.0.0.1? + KNOWN BUGS ==========