mc mirror --watch . s3/my-bucket
no debe eliminar los archivos que se eliminaron
mc mirror --watch
comporta como mc mirror --watch --remove
mc mirror --watch . s3/my-bucket
touch a
touch b
rm a
El archivo a
no debe eliminarse de s3/my-bucket
mc versión DEVELOPMENT.GOGET (alrededor del 18-09-2020)
go versión go1.15.2 linux / arm64
Ejecutando en raspberry pi 3 modelo b
Supongo que este es el comportamiento previsto, si ese es el caso, entonces sugeriría una nueva función para agregar --keep
a --watch
para que nunca intente eliminar archivos.
Mi objetivo al ejecutar este mc mirror --watch
es crear una copia de seguridad en el depósito a partir de archivos que deben eliminarse localmente debido a la falta de espacio en el disco (es decir, tengo mucho más espacio en mi depósito que en mi frambuesa)
Esto es por diseño de @rafaelsierra , hemos pasado algunas iteraciones sobre esto y no vale la
Algunos lo quieren --remove
con --watch
y otros no, no podemos satisfacer a todos.
¿Qué pasa con mi sugerencia de agregar --keep
que anularía este comportamiento? ¿Esto también se ha discutido?
He estado ejecutando esta versión PR durante algunas horas y está funcionando según lo previsto (con la bandera --keep
configurada).
@harshavardhana, ¿ es una idea interesante o debería descartar las relaciones públicas?
@harshavardhana si esto es por diseño, es un diseño completamente terrible. La existencia del indicador de eliminación implica que si no se establece el indicador de eliminación, no se deben eliminar cosas. Ese es también el comportamiento original de mirror, e introducir un cambio de comportamiento sin documentación, y sin cambios en el diseño de las banderas para el comando, es un espectáculo realmente pobre. Cualquier cosa que pueda causar eliminaciones inesperadas es un diseño terrible, y las eliminaciones y sobrescrituras deben protegerse bien. El diseño de la bandera actual para el comando espejo implica que lo son, pero eso simplemente no es cierto si el espejo puede eliminar objetos sin que se establezca --remove. ¿Cuál es el punto de --remove si el espejo se eliminará sin el indicador establecido? El punto se vuelve aún menos claro si se requiere una bandera --keep como se propone en # 3414 para proporcionar el efecto opuesto
Este problema se ha marcado automáticamente como obsoleto porque no ha tenido actividad reciente. Se cerrará después de 21 días si no se produce más actividad. Gracias por sus aportaciones.
Preferiría tener a alguien del proyecto para cerrar esto porque "no funciona" o "funciona como se esperaba" que dejar que se cierre debido a la obsolescencia.
Todavía estoy usando mi versión de relaciones públicas para solucionar este problema y parece que más personas tienen el mismo problema / preocupación. Sería mejor tener una respuesta oficial sobre este problema y actualizar la documentación para explicar este extraño comportamiento.
Este problema se ha marcado automáticamente como obsoleto porque no ha tenido actividad reciente. Se cerrará después de 21 días si no se produce más actividad. Gracias por sus aportaciones.
Curiosamente, el comportamiento parece ser diferente para mí, --watch --overwrite --preserve
nunca elimina los objetos eliminados del depósito de origen, y --watch --overwrite --preserve --remove
solo los elimina al inicio, pero ignora todos los archivos eliminados de la fuente posteriormente. .
mc version RELEASE.2021-04-22T17-40-00Z
minio version RELEASE.2021-04-22T15-44-28Z
Comentario más útil
@harshavardhana si esto es por diseño, es un diseño completamente terrible. La existencia del indicador de eliminación implica que si no se establece el indicador de eliminación, no se deben eliminar cosas. Ese es también el comportamiento original de mirror, e introducir un cambio de comportamiento sin documentación, y sin cambios en el diseño de las banderas para el comando, es un espectáculo realmente pobre. Cualquier cosa que pueda causar eliminaciones inesperadas es un diseño terrible, y las eliminaciones y sobrescrituras deben protegerse bien. El diseño de la bandera actual para el comando espejo implica que lo son, pero eso simplemente no es cierto si el espejo puede eliminar objetos sin que se establezca --remove. ¿Cuál es el punto de --remove si el espejo se eliminará sin el indicador establecido? El punto se vuelve aún menos claro si se requiere una bandera --keep como se propone en # 3414 para proporcionar el efecto opuesto