Azure by-hash cleanup can't read its link metadata
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 76/100
Línea de trabajo
Empieza por el escritor y el lector de enlaces de Azure en azure/public.go y luego sigue cómo deb/index_files.go usa ReadLink durante la rotación by-hash. Comprueba cómo almacena el escritor el destino del enlace y qué clave busca el lector; el issue informa de que estas claves son distintas. Reprodúcelo con la configuración de Azurite descrita en el issue y confirma que la rotación elimina el hash más antiguo después de dos generaciones modificadas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The Azure backend's SymLink stores the link target in metadata key SymLink, but ReadLink looks for original_blob. As a result, by-hash rotation can't find the oldest index's target, so that blob never gets deleted.
I reproduced this with Azurite by calling the production packageIndexByHash function for successive SHA256 index generations, waiting for leases to expire between writes. The oldest hash was still there after two changed generations, although the current/previous-generation policy should have removed it. Every ReadLink call returned:
error reading link dists/noble/main/binary-amd64/by-hash/SHA256/Packages: <nil>
The stored metadata had SymLink, and every retained hash blob still matched its original contents.
Relevant code: Azure link writer/reader and index rotation.
- Lenguaje dominante
- Go
- Estrellas
- 2.9k
- Forks
- 436
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 aptly-dev/aptly
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 80/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 54/100
-
Aptly fails to use CONNECT-only HTTP proxiesPosiblemente ocupada @7heo la tomó hace 43 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 30/100
Todos los issues de aptly-dev/aptly
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
keyxmakerx/Chronicle#1721 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Gentleman-Programming/gentle-ai#5720 ·
Los mantenedores suelen responder en 1 día
-
compress: block buffers get re-zeroed on every call, and the zeroing is immediately overwrittenAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
ClickHouse/ch-go#1218 ·
Los mantenedores suelen responder en 13 días
-
effort:s impact:low raised-by:reviewer risk:low
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
medici-finance/assay#4251 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
stripCodeFence unti testsAbierto
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
Edwin-metcalf/MetCode#30 ·
Los mantenedores suelen responder en 1 día