开发者社区 问答 正文

在loadAppendOnlyFiles函数中,如何判断当前Redis实例是否处于从老版本升级的状态

在loadAppendOnlyFiles函数中,如何判断当前Redis实例是否处于从老版本升级的状态?

展开
收起
不吃核桃 2024-07-22 20:02:54 45 发布于山西 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 在loadAppendOnlyFiles函数中,如果server.aof_filename文件存在于工作目录中,并且满足以下三个条件之一,则认为当前Redis实例处于从老版本升级的状态:

    'server.aof_dirname'目录不存在。
    'server.aof_dirname'目录存在但manifest文件缺失(即am->base_aof_info == NULL && listLength(am->incr_aof_list) == 0)。
    'server.aof_dirname'目录存在,manifest文件中仅有一个BASE AOF记录,且该BASE AOF的文件名与server.aof_filename相同,但'server.aof_filename'文件在'server.aof_dirname'目录中不存在(即am->base_aof_info != NULL && listLength(am->incr_aof_list) == 0 && !strcmp(am->base_aof_info->file_name, server.aof_filename) && !aofFileExist(server.aof_filename))。

    2024-07-22 20:52:41 举报
    赞同 1 评论

    评论

    全部评论 (0)

    登录后可评论