• 使用phxpaxos开发过程中遇到的坑


    1. 开启BatchPropose后,状态机使用ExecuteForCheckpoint生成快照要注意:

    ExecuteForCheckpoint中的InstanceID不能立即持久化。

    例如:

        当instance id = 3中包含多个值的时候,如果执行第一个值就更新的checkpoint version(GetCheckpointInstanceID的返回值),那么当进程重启之后(例如进程挂了),后面几个值就永远没有机会调用ExecuteForCheckpoint应用到checkpoint了

    建议的做法:

    当发现InstanceID变化时,将上次的InstanceID持久化。

    可能的问题:

    BatchPropose中的多个值可能即使已经return true了,还是会被再次ExecuteForCheckpoint

    解决的问题:

    BatchPropose中的多个值被丢失的情况

    https://github.com/tencent-wechat/phxpaxos/issues/56

    2. 开启IsUseMaster之后,非master依然可以Propose成功。调用者要自己想办法保护。暂时没想到不改源代码的解决方式。

    3. LogStorage的路径使用相对路径时,传输snapshot会出错

    https://github.com/tencent-wechat/phxpaxos/issues/49

  • 相关阅读:
    cookie和session。
    K3cloud Web API对接---单据保存接口(有源单)
    K3 wise kis 防火墙设置
    新单序时簿插件
    mssqlserver中排序规则冲突的问题解决
    读取金蝶图片
    金蝶wise委外订单关闭简述
    存储过程加锁
    判断存储过程是否存在
    解除死锁
  • 原文地址:https://www.cnblogs.com/niukuo/p/6879859.html
Copyright © 2020-2023  润新知