• Sage Weil's avatar
    libceph: add support for HASHPSPOOL pool flag · 83ca14fd
    Sage Weil authored
    The legacy behavior adds the pgid seed and pool together as the input for
    CRUSH.  That is problematic because each pool's PGs end up mapping to the
    same OSDs: 1.5 == 2.4 == 3.3 == ...
    
    Instead, if the HASHPSPOOL flag is set, we has the ps and pool together and
    feed that into CRUSH.  This ensures that two adjacent pools will map to
    an independent pseudorandom set of OSDs.
    
    Advertise our support for this via a protocol feature flag.
    Signed-off-by: default avatarSage Weil <sage@inktank.com>
    Reviewed-by: default avatarAlex Elder <elder@inktank.com>
    83ca14fd
osdmap.c 28.8 KB