rbd rm rbd/test2/image2
rbd rm rbd/image2
+ # v1 clones are supported within the same namespace
+ rbd create $RBD_CREATE_ARGS --size 1G rbd/test1/image3
+ rbd snap create rbd/test1/image3@1
+ rbd snap protect rbd/test1/image3@1
+ rbd clone --rbd-default-clone-format 1 rbd/test1/image3@1 rbd/test1/image4
+ rbd rm rbd/test1/image4
+ rbd snap unprotect rbd/test1/image3@1
+ rbd snap rm rbd/test1/image3@1
+ rbd rm rbd/test1/image3
+
rbd create $RBD_CREATE_ARGS --size 1G --namespace test1 image2
expect_fail rbd namespace remove rbd/test1
ldout(m_cct, 15) << dendl;
librados::ObjectWriteOperation op;
- cls_client::add_child(&op, {m_parent_image_ctx->md_ctx.get_id(),
- m_parent_image_ctx->md_ctx.get_namespace(),
+ cls_client::add_child(&op, {m_parent_image_ctx->md_ctx.get_id(), "",
m_parent_image_ctx->id,
m_parent_snap_id}, m_image_ctx->id);
auto cct = m_image_ctx.cct;
ldout(cct, 5) << dendl;
+ m_parent_spec.pool_namespace = "";
+
librados::ObjectWriteOperation op;
librbd::cls_client::remove_child(&op, m_parent_spec, m_image_ctx.id);