• Levin Zimmermann's avatar
    wcfs: Move zuri filter to lib/zodb · ae54c563
    Levin Zimmermann authored
    The WCFS mountpoint of any ZODB storage must be a unique, persistent,
    repeatable hash. This means any client which uses the same storage must
    always calculate the same WCFS mountpoint (independent from
    client-only parameters etc.). Therefore the WCFS mountpoint calculation
    must be robust for all supported ZODB storage types (at least NEO, ZEO,
    filestorage).
    
    It was recently decided [1] that in order to provide this robustness, WCFS
    mountpoint calculation should filter the parsed URI in order to drop
    parts, which prevents the repeatability/persistence across different
    clients (e.g. parts which can differ between clients although the same
    storage is accessed). In order to make this filtering implementation a
    bit easier to read and the wcfs/__init__.py less dense, the first step
    is to move the zurl filtering ("normalization") into lib/zodb.py
    This also makes sense since this normalization can be regarded as a
    general zodb tool which may be useful for other solutions which use
    zodburi.
    
    [1] neoppod!18 (comment 184671)
    
    /reviewed-by @kirr
    /reviewed-on !17
    ae54c563