Fixes: #11256
Multiple concurrent requests might be sent using the same tag, need the
entry map to be able to hold multiple entries.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
}
// fill in proper state
- struct rgw_bucket_pending_info& info = entry.pending_map[op.tag];
+ struct rgw_bucket_pending_info info;
info.timestamp = ceph_clock_now(g_ceph_context);
info.state = CLS_RGW_STATE_PENDING_MODIFY;
info.op = op.op;
+ entry.pending_map.insert(pair<string, rgw_bucket_pending_info>(op.tag, info));
bufferlist header_bl;
std::string locator;
bool exists;
struct rgw_bucket_dir_entry_meta meta;
- map<string, struct rgw_bucket_pending_info> pending_map;
+ multimap<string, struct rgw_bucket_pending_info> pending_map;
uint64_t index_ver;
string tag;