From: Yehuda Sadeh Date: Tue, 29 Nov 2016 22:05:27 +0000 (-0800) Subject: rgw: use set for zonegroup placement target tags X-Git-Tag: v11.1.0~110^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=12162d654ce24db0617e4bc3de24aebc28b50996;p=ceph.git rgw: use set for zonegroup placement target tags Signed-off-by: Yehuda Sadeh --- diff --git a/src/rgw/rgw_rados.h b/src/rgw/rgw_rados.h index 6d7525fb0ab8..3d44e8673c36 100644 --- a/src/rgw/rgw_rados.h +++ b/src/rgw/rgw_rados.h @@ -1179,18 +1179,15 @@ WRITE_CLASS_ENCODER(RGWDefaultZoneGroupInfo) struct RGWZoneGroupPlacementTarget { string name; - list tags; + set tags; bool user_permitted(list& user_tags) { if (tags.empty()) { return true; } - for (list::iterator uiter = user_tags.begin(); uiter != user_tags.end(); ++uiter) { /* we don't expect many of either, so we can handle this kind of lookup */ - string& rule = *uiter; - for (list::iterator iter = tags.begin(); iter != tags.end(); ++iter) { - if (rule == *iter) { - return true; - } + for (auto& rule : user_tags) { + if (tags.find(rule) != tags.end()) { + return true; } } return false;