Seagate / cortx-motr

CORTX Motr is a distributed object and key-value storage system targeting mass capacity storage configurations. It's the core component of CORTX storage system.
https://github.com/Seagate/cortx
Apache License 2.0
59 stars 142 forks source link

dix: introduce cas-delete by obj-version operation #2119

Closed andriytk closed 7 months ago

andriytk commented 2 years ago

This is needed for the 2nd phase of the tombstones cleanup procedure, see more at https://github.com/Seagate/cortx-motr/issues/2117.

Motr client should be able to delete by specific obj-version from the bucket index. It should perform the actual deletion, not insertion of the tombstones like in normal delete operations.

On the server side, the deletion should happen only if the exact obj-version is present. Newer obj-versions should not be touched. If an older obj-version is present (unlikely), an error should be returned.

The operation should return success only if all replicas were processed and there is no replica left which would have the specified or older object version in it.

cortx-admin commented 2 years ago

For the convenience of the Seagate development team, this issue has been mirrored in a private Seagate Jira Server: https://jts.seagate.com/browse/CORTX-34134. Note that community members will not be able to access that Jira server but that is not a problem since all activity in that Jira mirror will be copied into this GitHub issue.

tshaffe1 commented 2 years ago

DIX can currently do unconditional tombstone delete via delete with zero version. This looks like it would need to be a new operation in CAS and DIX, along with client interface.

stale[bot] commented 1 year ago

This issue/pull request has been marked as needs attention as it has been left pending without new activity for 4 days. Tagging @nkommuri @mehjoshi @huanghua78 for appropriate assignment. Sorry for the delay & Thank you for contributing to CORTX. We will get back to you as soon as possible.

shailesh-vaidya commented 7 months ago

Closing as an obsolete