Advertisement

Redis源码分析(十二):redis-check-dump本地数据库检测

阅读量:

这份文件在今天的学习过程中给我留下了深刻的印象,在探索过程中始终有一种似懂非完全然掌握的感觉。其中包含了超过700行代码的项目,在最终提交给系统的功能模块是一个名为process()的方法。此处涉及数据库检测过程,在对键值对进行检测分析的基础上会生成相应的处理逻辑。下面将介绍相关的技术架构

复制代码
 /* Data type to hold opcode with optional key name an success status */

    
 /* 用于key的检测时使用,后续检测操作都用到了entry结构体 */
    
 typedef struct {
    
 	//key的名字
    
     char* key;
    
     //类型
    
     int type;
    
     //是否是成功状态
    
     char success;
    
 } entry;

后续涉及的所有API都与此结构体紧密相连;此代码将执行的任务是检测一个名为dump.rdb的文件,在完成该操作后会附加循环冗余校验(CRC64)。以下列出所有相关的API入口:

复制代码
 int checkType(unsigned char t) /* 每当添加一个新的obj类型时,都要检测这个类型是否合理 */

    
 int r

全部评论 (0)

还没有任何评论哟~