mirror of
https://github.com/ceph/ceph
synced 2024-12-29 15:03:33 +00:00
OSDMap::_pg_to_up_acting_osds: use _acting_primary unless acting is empty
If the temp set for whatever reason has only CRUSH_ITEM_NONE, we need primary to be -1. Signed-off-by: Samuel Just <sam.just@inktank.com>
This commit is contained in:
parent
dc079eb3c5
commit
be2748c6d5
@ -1555,10 +1555,10 @@ void OSDMap::_pg_to_up_acting_osds(pg_t pg, vector<int> *up, int *up_primary,
|
||||
_raw_to_up_osds(*pool, raw, &_up, &_up_primary);
|
||||
_apply_primary_affinity(pps, *pool, &_up, &_up_primary);
|
||||
_get_temp_osds(*pool, pg, &_acting, &_acting_primary);
|
||||
if (_acting.empty())
|
||||
if (_acting.empty()) {
|
||||
_acting = _up;
|
||||
if (_acting_primary == -1)
|
||||
_acting_primary = _up_primary;
|
||||
}
|
||||
if (up)
|
||||
up->swap(_up);
|
||||
if (up_primary)
|
||||
|
Loading…
Reference in New Issue
Block a user