Add rados purge option to remove all objects from a pool
Per discussion on ceph-devel mailing list, in order to remove all objects from a pool we should have a command like this:
rados -p <poolname> purge --yes-i-really-really-mean-it
There is already clean_up_slow() which can easily be adapted to perform this command. Remember to deal with all namespaces.
An evaluation of how bench/cleanup should behave with respect to the namespace options (--all, -N) should be done too.
common, tools, test: Add "rados purge" feature to remove all objects from a pool
This required creating an Object type which is a pair of strings an
object id and object namespace. Functionally, nothing has changed
with regards to the bench and cleanup command semantics. Those
commands still allow operation in the default or a specified namespace.
Signed-off-by: David Zafman <email@example.com>
#4 Updated by David Zafman over 4 years ago
- Status changed from 7 to Fix Under Review
The rados --all option already works correctly in that it only applies to the ls command.
I made the usage differently than the feature description:
rados purge <pool-name> --yes-i-really-really-mean-it
This is similar to the pool commands mkpool, cppool and rmpool which don't use the -p option to specify the pool name.