微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么 RBD snap id 从 4 开始?

如何解决为什么 RBD snap id 从 4 开始?

我是一名新手 Ceph 开发人员,最近阅读了快照代码。从 pg_pool_t::add_unmanaged_snap,很明显第一个 RBD 快照 id 应该 从2开始,但实际上是从4开始,不知道有没有生物 在 RBD snap 中,它增加了 snap_seq,有人可以帮我吗?

提前致谢!

下面是 pg_pool_t::add_unmanaged_snap代码

void pg_pool_t::add_unmanaged_snap(uint64_t& snapid)
{
  ceph_assert(!is_pool_snaps_mode());
  if (snap_seq == 0) {
    // kludge for pre-mimic tracking of pool vs selfmanaged snaps.  after
    // mimic this field is not decoded but our flag is set; pre-mimic,we
    // have a non-empty removed_snaps to signifiy a non-pool-snaps pool.
    removed_snaps.insert(snapid_t(1));
    snap_seq = 1;
  }
  flags |= FLAG_SELFMANAGED_SNAPS;
  snapid = snap_seq = snap_seq + 1;
}

下面的截图是在一个全新的 rbd 池上创建 rbd 快照的过程。很明显,这里的snapshot id从4开始

在全新的 rbd 池上创建 rbd 快照

here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。