Is it possible to use dvc gc --cloud
to garbage collect a dvc remote stored in an artifactory repo?
For me it raises a NotImplementedError
in dvc_http
.
Is that known behavior?
I used: dvc gc -w -a -T -f -c -v
Using the same command without the --cloud flag works as intended.
Logs:
2025-03-21 10:20:21,860 ERROR: unexpected error
Traceback (most recent call last):
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc/cli/__init__.py", line 211, in main
ret = cmd.do_run()
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc/cli/command.py", line 27, in do_run
return self.run()
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc/commands/gc.py", line 73, in run
self.repo.gc(
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc/repo/__init__.py", line 58, in wrapper
return f(repo, *args, **kwargs)
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc/repo/gc.py", line 145, in gc
num_removed = ogc(remote_odb, obj_ids, jobs=jobs, dry=dry)
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc_data/hashfile/gc.py", line 44, in gc
for hash_ in QueryingProgress(odb.all(jobs), name=odb.path):
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/tqdm/std.py", line 1181, in __iter__
for obj in iterable:
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc_objects/db.py", line 250, in _list_oids
for path in self._list_prefixes(prefixes=prefixes, jobs=jobs):
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc_objects/db.py", line 225, in _list_prefixes
yield from self.fs.find(paths, batch_size=jobs, prefix=prefix)
File "/home/blascju/repos/mspems/dsmodeling/.venv/lib/python3.10/site-packages/dvc_http/__init__.py", line 153, in find
raise NotImplementedError
NotImplementedError
DVC version: 3.59.1 (pip)
-------------------------
Platform: Python 3.10.15 on Linux-5.15.167.4-microsoft-standard-WSL2-x86_64-with-glibc2.31
Subprojects:
dvc_data = 3.16.9
dvc_objects = 5.1.0
dvc_render = 1.0.2
dvc_task = 0.40.2
scmrepo = 3.3.9
Supports:
http (aiohttp = 3.11.10, aiohttp-retry = 2.9.1),
https (aiohttp = 3.11.10, aiohttp-retry = 2.9.1),
s3 (s3fs = 2024.10.0, boto3 = 1.35.36)
Config:
Global: /home/blascju/.config/dvc
System: /etc/xdg/dvc
Cache types: hardlink, symlink
Cache directory: ext4 on /dev/sdc
Caches: local
Remotes: https
Workspace directory: ext4 on /dev/sdc
Repo: dvc, git
Repo.site_cache_dir: /var/tmp/dvc/repo/af633f58f20d1c1d6800403914d3bb19
config
[core]
remote = artifactory
autostage = true
['remote "artifactory"']
url = https://artifactory.com/artifactory/<my-repo>
auth = basic
method = PUT