1月2日~1月8日-Redis周报

CommitLog 分析

修复了OBJ_ENCODING_LISTPACK的内存统计方法
优化了ZRANDMEMBER可能出现的OOM操作,增加了每次申请空间的限制。

在config中,对cluster-mode下的dbnum做处理,替换原有的exit操作

日志中增加本地和对端的addr信息

在redis-cli中支持PSYNC命令。【TODO】

在lua中,经过module的RM_CommandFilterArgInsert操作,可能导致原有的argv对象大小发生变化,但由于使用的zrealloc,地址并未变化,最终导致内存损坏,故增加了对argv_len的判断。

优化了主从同步时的超时时间设置,避免ci错误

抽象了对本地client的判断逻辑,从原有的islocalClient抽象出了对各类连接的方法connIsLocal

优化mset的多次lookup操作

增加了cluster info命令以及在core后打印cluster的信息

对blocked client做了很大量的重构,【TODO】