Skip to content

Commit 1867a64

Browse files
committed
fix: correctly update progress bar for bulk remote exist queries
This also removes the general `except` block and uses fail-closed behavior for missing entries.
1 parent 16e14e5 commit 1867a64

File tree

1 file changed

+12
-34
lines changed

1 file changed

+12
-34
lines changed

dvc/repo/data.py

Lines changed: 12 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -456,41 +456,19 @@ def _onerror(entry, exc):
456456
n += 1
457457
cb.set_size(n)
458458

459-
entries_list = list(entries.values())
460-
if hasattr(storage_map, "bulk_remote_exists"):
459+
results = storage_map.bulk_remote_exists(
460+
list(entries.values()), refresh=remote_refresh, callback=cb
461+
)
462+
for key, entry in entries.items():
463+
k = (*key, "") if entry.meta and entry.meta.isdir else key
461464
try:
462-
results = storage_map.bulk_remote_exists(
463-
entries_list, refresh=remote_refresh
464-
)
465-
for key, entry in entries.items():
466-
k = (*key, "") if entry.meta and entry.meta.isdir else key
467-
try:
468-
if not results.get(entry, True):
469-
missing_entries.append(os.path.sep.join(k))
470-
except StorageKeyError:
471-
pass
472-
finally:
473-
cb.relative_update()
474-
except Exception:
475-
for key, entry in entries.items():
476-
k = (*key, "") if entry.meta and entry.meta.isdir else key
477-
try:
478-
if not storage_map.remote_exists(entry, refresh=remote_refresh):
479-
missing_entries.append(os.path.sep.join(k))
480-
except StorageKeyError:
481-
pass
482-
finally:
483-
cb.relative_update()
484-
else:
485-
for key, entry in entries.items():
486-
k = (*key, "") if entry.meta and entry.meta.isdir else key
487-
try:
488-
if not storage_map.remote_exists(entry, refresh=remote_refresh):
489-
missing_entries.append(os.path.sep.join(k))
490-
except StorageKeyError:
491-
pass
492-
finally:
493-
cb.relative_update()
465+
if not results.get(entry, False):
466+
missing_entries.append(os.path.sep.join(k))
467+
except StorageKeyError:
468+
pass
469+
finally:
470+
cb.relative_update()
471+
494472
data_index.onerror = orig_data_index_onerror
495473
return missing_entries
496474

0 commit comments

Comments
 (0)