You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We're noticing some ugly behavior when re-consolidating a store with pre-existing consolidated metadata. If a child node in the store already has consolidated metadata in it, any subsequent consolidation attempts will fail to find children that were not present before the consolidation. Because there is no way to invalidate the consolidated metadata, it is not possible to consolidate the entire store.
Note: In #2920, we also noticed a distinct but related issue where the behavior of consolidate_metadata has changed to honor the path argument.
I think I see where the bug comes from: In consolidate_metadata, we do use the flag use_consolidated=False in the top-level AsyncGroup.open. However, when we walk group.members() at
I believe the cleanest solution is to add a keyword use_consolidated: bool | None = None to Group.members with the same meaning as in Group.open. We'd ensure that consolidate_metadata passes through use_consolidated=False.
Implementation-wise, I think we could either try threading that through to the _iter_members /_iter_members_deep`, or just clear any consolidated metadata we might have loaded before we walk that Group's members.
Zarr version
3.0.5
Numcodecs version
v0.15.1
Python Version
3.11
Operating System
Mac
Installation
conda/pip
Description
We're noticing some ugly behavior when re-consolidating a store with pre-existing consolidated metadata. If a child node in the store already has consolidated metadata in it, any subsequent consolidation attempts will fail to find children that were not present before the consolidation. Because there is no way to invalidate the consolidated metadata, it is not possible to consolidate the entire store.
Note: In #2920, we also noticed a distinct but related issue where the behavior of
consolidate_metadata
has changed to honor thepath
argument.Steps to reproduce
The text was updated successfully, but these errors were encountered: