千家信息网

ESlaveUpdate类怎么用

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章主要为大家展示了"ESlaveUpdate类怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"ESlaveUpdate类怎么用"这篇文章吧。ES
千家信息网最后更新 2025年01月19日ESlaveUpdate类怎么用

这篇文章主要为大家展示了"ESlaveUpdate类怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"ESlaveUpdate类怎么用"这篇文章吧。

ESlaveUpdate类说明:

class ESlaveUpdate: public LogEvent {   EMetaBlob commit;   bufferlist rollback;                   string type;   metareqid_t reqid;   mds_rank_t     master;   __u8        op;   __u8         origop; };

ESlaveUpdate类的方法:
ESlaveUpdate::replay(mds)
|__根据op的值做分类处理
|__op==ESlaveUpdate::OP_PREPARE
|__创建新的MDSlaveUpdate类对象
|__执行EMetaBlob::replay()操作,即:commit.replay()
|__在MDCache中添加uncommitted slave update信息,即:mds->mdcache->add_uncommitted_slave_update()
|__op==ESlaveUpdate::OP_COMMIT
|__从MDCache中得到uncommitted slave update信息,即:mds->mdcache->get_uncommitted_slave_update()
|__在MDCache中执行finish uncommitted slave update操作,即:mds->mdcache->finish_uncommitted_slave_update()
|__op==ESlaveUpdate::OP_ROLLBACK
|__执行EMetaBlob::replay()操作,即:commit.replay()
|__从MDCache中得到uncommitted slave update信息,即:mds->mdcache->get_uncommitted_slave_update()
|__在MDCache中执行finish uncommitted slave update操作,即:mds->mdcache->finish_uncommitted_slave_update()

以上是"ESlaveUpdate类怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0