欢迎光临
我们一直在努力

JournalPointer怎么用

这篇文章主要介绍了JournalPointer怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

JournalPointer类说明:

class JournalPointer {

     int node_id;          记录MDS Rank

     int64_t pool_id;     记录metadata pool的ID值

     inodeno_t front;     记录当前有效的日志

     inodeno_t back;     记录backup的日志,正常情况下back应该为0,若不为0表示有未完成的日志操作

};

JournalPointer类写入到集群中的内容:

front和back需要写入到集群中。

     pool = metadata pool;

     object_id = MDS_INO_LOG_POINTER_OFFSET+node_id+”.0”

JournalPointer类的方法:

JournalPointer::load()

|__得到object_id值

|__Objecter::read_full(object_id, pool_id…)               从集群中读取JournalPointer的front和back值

|__decode(q)                                                               从集群返回结果中解析front和back值

JournalPointer::save()

|__encode(data)                                                       序列化front和back值到bufferlist中

|__得到object_id值

|__Objecter::write_full(object_id, pool_id,data)          将序列化的front和back值写入到集群中

感谢你能够认真阅读完这篇文章,希望小编分享的“JournalPointer怎么用”这篇文章对大家有帮助,同时也希望大家多多支持云搜网,关注云搜网行业资讯频道,更多相关知识等着你来学习!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。