]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
Tools/rados: Improve Error Messaging for Object Name Resolution
authorNitzanMordhai <nmordech@redhat.com>
Thu, 16 Nov 2023 07:09:29 +0000 (07:09 +0000)
committerKonstantin Shalygin <k0ste@k0ste.ru>
Thu, 11 Jan 2024 05:06:52 +0000 (12:06 +0700)
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)

src/tools/rados/rados.cc

index 3d602e749cdee9aec3625c6e3cfec0366b7fb8f9..cd301916c478f4549bfc4af4ab0325fd81b8e8f2 100644 (file)
@@ -2971,7 +2971,7 @@ static int rados_tool_common(const std::map < std::string, std::string > &opts,
     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;
       }