The current implementation of 'rados clearomap' exhibits a behavior where
an error message is generated without the associated object name or,
in the case of a non-existent object name, may result in a segmentation fault.
The proposed fix addresses this issue by enhancing the error message.
After applying the fix, error messages will consistently display the correct
object name, providing users with more accurate and actionable information.
Fixes: https://tracker.ceph.com/issues/63541
Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
(cherry picked from commit
313bfca056ef7f83c0e8c70a3bc4ff9d070b63d9)
for (const auto& oid : oids) {
ret = io_ctx.omap_clear(oid);
if (ret < 0) {
- cerr << "error clearing omap keys " << pool_name << "/" << prettify(*obj_name) << "/"
+ cerr << "error clearing omap keys " << pool_name << "/" << prettify(oid) << "/"
<< cpp_strerror(ret) << std::endl;
return 1;
}