From b831b2e70dd5d24a137b53b6b2aee6d1f48cfc9e Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Tue, 22 Oct 2019 15:17:50 -0700 Subject: [PATCH] rgw: rgw_bucket operator fixes Fix smaller-than operator, ostream operator. Signed-off-by: Yehuda Sadeh --- src/rgw/rgw_common.h | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/rgw/rgw_common.h b/src/rgw/rgw_common.h index 8c3872cf2ae..ce206281146 100644 --- a/src/rgw/rgw_common.h +++ b/src/rgw/rgw_common.h @@ -1265,11 +1265,19 @@ struct rgw_bucket { rgw_bucket& operator=(const rgw_bucket&) = default; bool operator<(const rgw_bucket& b) const { - if (tenant == b.tenant) { - return name < b.name; - } else { - return tenant < b.tenant; + if (name < b.name) { + return true; + } else if (name > b.name) { + return false; + } + + if (bucket_id < b.bucket_id) { + return true; + } else if (bucket_id > b.bucket_id) { + return false; } + + return (tenant < b.tenant); } bool operator==(const rgw_bucket& b) const { @@ -1284,7 +1292,7 @@ struct rgw_bucket { WRITE_CLASS_ENCODER(rgw_bucket) inline ostream& operator<<(ostream& out, const rgw_bucket &b) { - out << b.tenant << ":" << b.name << "[" << b.marker << "])"; + out << b.tenant << ":" << b.name << "[" << b.bucket_id << "])"; return out; } -- 2.39.5