Skip to content

Commit

Permalink
radosgw-admin: 'reshard list' doesn't log ENOENT errors
Browse files Browse the repository at this point in the history
ENOENT errors are expected, especially in fresh clusters, before we've
written any entries to the reshard list shards. avoid logging these
non-fatal ERROR messages:

> -1 ERROR: failed to list reshard log entries, oid=reshard.0000000000 marker= (2) No such file or directory

Fixes: https://tracker.ceph.com/issues/52873

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 952c7c8)

Conflicts:
	src/rgw/rgw_reshard.cc

Cherry-pick notes:
- pacific using lderr vs ldpp_dout
  • Loading branch information
cbodley authored and cfsnyder committed Mar 16, 2022
1 parent 179a7bc commit 2d65a1f
Showing 1 changed file with 11 additions and 12 deletions.
23 changes: 11 additions & 12 deletions src/rgw/rgw_reshard.cc
Expand Up @@ -888,18 +888,17 @@ int RGWReshard::list(int logshard_num, string& marker, uint32_t max, std::list<c

int ret = cls_rgw_reshard_list(store->getRados()->reshard_pool_ctx, logshard_oid, marker, max, entries, is_truncated);

if (ret < 0) {
lderr(store->ctx()) << "ERROR: failed to list reshard log entries, oid=" << logshard_oid << " "
<< "marker=" << marker << " " << cpp_strerror(ret) << dendl;
if (ret == -ENOENT) {
*is_truncated = false;
ret = 0;
} else {
if (ret == -EACCES) {
lderr(store->ctx()) << "access denied to pool " << store->svc()->zone->get_zone_params().reshard_pool
<< ". Fix the pool access permissions of your client" << dendl;
}
}
if (ret == -ENOENT) {
// these shard objects aren't created until we actually write something to
// them, so treat ENOENT as a successful empty listing
*is_truncated = false;
ret = 0;
} else if (ret == -EACCES) {
lderr(store->ctx) << "ERROR: access denied to pool " << store->svc()->zone->get_zone_params().reshard_pool
<< ". Fix the pool access permissions of your client" << dendl;
} else if (ret < 0) {
lderr(store->ctx) << "ERROR: failed to list reshard log entries, oid="
<< logshard_oid << " marker=" << marker << " " << cpp_strerror(ret) << dendl;
}

return ret;
Expand Down

0 comments on commit 2d65a1f

Please sign in to comment.