Skip to content

Commit

Permalink
fix: remove potential old alias from cache when registering new one
Browse files Browse the repository at this point in the history
  • Loading branch information
makkus committed Jun 12, 2024
1 parent 63b207a commit 6e12afa
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions src/kiara/registries/aliases/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -520,6 +520,19 @@ def register_aliases(
logger.info("alias.replace", alias=actual_alias)
# raise NotImplementedError()

old_value = self.aliases.get(actual_alias)
if old_value and self._cached_aliases_by_id is not None:
to_remove = set()
old_aliases = self._cached_aliases_by_id.get(old_value.value_id)
if old_aliases:
for old_alias in old_aliases:
if old_alias.full_alias == actual_alias:
to_remove.add(old_alias)

self._cached_aliases_by_id[old_value.value_id].remove(
*to_remove
)

self.aliases[actual_alias] = alias_item # type: ignore
self._cached_aliases_by_id.setdefault(value.value_id, set()).add(alias_item) # type: ignore

Expand Down

0 comments on commit 6e12afa

Please sign in to comment.