[BUG] Dataset downloader reports success and replaces data after a failed download
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 75/100
Línea de trabajo
Start with datasets/get_test_data.sh and trace the download, extraction, and destination replacement steps for each selected dataset. Reproduce the failure using the temporary directory and fake wget command in the issue body, then check that failed downloads or extraction return a nonzero status and preserve existing data. Done means the same behavior holds for every selected dataset.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
datasets/get_test_data.sh can return exit status 0 after a download fails, while removing and recreating an existing destination directory. A developer can therefore lose the prior dataset and receive a success status even though the replacement was never downloaded or extracted.
Steps to reproduce
From a source checkout, this uses a temporary directory and a fake wget; it does not touch an existing dataset or make a network request:
task_dir=$(mktemp -d)
mkdir -p "$task_dir/bin" "$task_dir/work/cvrp"
cp datasets/get_test_data.sh "$task_dir/work/"
printf 'existing data\n' > "$task_dir/work/cvrp/sentinel"
printf '#!/bin/sh\nexit 8\n' > "$task_dir/bin/wget"
chmod +x "$task_dir/bin/wget"
(
cd "$task_dir/work"
env -u CUOPT_S3_URI -u CUOPT_AWS_ACCESS_KEY_ID -u CUOPT_AWS_SECRET_ACCESS_KEY \
PATH="$task_dir/bin:$PATH" ./get_test_data.sh --cvrp
printf 'exit status: %s\n' "$?"
if test -f cvrp/sentinel; then echo 'original preserved'; else echo 'original removed'; fi
)
Observed: the script reports a failed download and missing archive, prints exit status: 0, and prints original removed.
Expected behavior
Report a nonzero status when a selected dataset cannot be downloaded or extracted, and preserve an existing destination unless a complete replacement is ready. The same distinction should hold for any selected dataset, not just CVRP.
Environment and scope
Reproduced on Linux against main at 52d14b4c97de5591a8054ef1971a92e10617aed7. The fake-download case exercises the HTTP fallback in a disposable directory. An isolated ordinary run also observed an HTTP 404 followed by status 0; the issue is the script's failure handling rather than the availability of any particular external URL.
- Lenguaje dominante
- Cuda
- Estrellas
- 1.1k
- Forks
- 255
- Merge medio
- 1 d 11 h
- PR fusionados (30 d)
- 123
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de NVIDIA/cuopt
-
[BUG] Constraint validation reports CSR offset count as the number of rowsPosiblemente ocupada @0z5a la tomó hace 2 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
ci: pr-test-summary job shows red when the GitHub API returns persistent 5xx errorsPosiblemente ocupada @0z5a la tomó hace 2 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 32/100
Los mantenedores suelen responder en 1 día
Todos los issues de NVIDIA/cuopt
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
endoflife-date/endoflife.date#11558 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
alltheplaces/alltheplaces#20388 ·
Los mantenedores suelen responder en 1 día
-
bug needs triage python
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
ktwu01/benchmark-radar#1168 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 84/100
osmlab/name-suggestion-index#13071 ·
Los mantenedores suelen responder en 2 días