In aim/storage/union.pyx, line 56, the exception in the except clause is errorsRocksIOError. I guess it should be errors.RocksIOError, since that's what is in the other methods.
This causes the following exception:
To reproduce
List corrupted runs (e.g., by aim runs ls --corrupted or Repo.list_corrupted_runs() for a repository that contains corrupted runs. Actually, I couldn't reproduce it on a newly initialised repository, after creating runs and deleting random files from them, so it may not be that simple.
However, trying to list corrupted runs on the repository that I actually use produced the following:
% aim runs ls --corrupted
Traceback (most recent call last):
File "/home/sulan/miniconda3/envs/aim_newest/bin/aim", line 8, in <module>
sys.exit(cli_entry_point())
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
return self.main(*args, **kwargs)
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/click/decorators.py", line 26, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/aim/cli/runs/commands.py", line 34, in list_runs
run_hashes = repo.list_corrupted_runs() if corrupted else repo.list_all_runs()
File "/home/sulan/miniconda3/envs/aim_newest/lib/python3.10/site-packages/aim/sdk/repo.py", line 433, in list_corrupted_runs
return list(map(get_run_hash_from_prefix, container.corrupted_dbs))
File "aim/storage/union.pyx", line 313, in aim.storage.union.RocksUnionContainer.corrupted_dbs
File "aim/storage/union.pyx", line 56, in aim.storage.union.ItemsIterator.seek_to_first
AttributeError: module 'aimrocks' has no attribute 'errorsRocksIOError'
Expected behavior
The command runs without raising an AttributeError and lists the corrupted runs.
π Bug
In
aim/storage/union.pyx
, line 56, the exception in theexcept
clause iserrorsRocksIOError
. I guess it should beerrors.RocksIOError
, since that's what is in the other methods.This causes the following exception:
To reproduce
List corrupted runs (e.g., by
aim runs ls --corrupted
orRepo.list_corrupted_runs()
for a repository that contains corrupted runs. Actually, I couldn't reproduce it on a newly initialised repository, after creating runs and deleting random files from them, so it may not be that simple.However, trying to list corrupted runs on the repository that I actually use produced the following:
Expected behavior
The command runs without raising an
AttributeError
and lists the corrupted runs.Environment