<p>espejo mc - el reloj implica - remover</p>

Creado en 22 sept. 2020  ·  9Comentarios  ·  Fuente: minio/mc

Comportamiento esperado

mc mirror --watch . s3/my-bucket no debe eliminar los archivos que se eliminaron

Comportamiento real

mc mirror --watch comporta como mc mirror --watch --remove

Pasos para reproducir el comportamiento

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

mc versión DEVELOPMENT.GOGET (alrededor del 18-09-2020)

Información del sistema

go versión go1.15.2 linux / arm64
Ejecutando en raspberry pi 3 modelo b

stale

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

Todos 9 comentarios

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
¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

mausch picture mausch  ·  8Comentarios

kevinlul picture kevinlul  ·  13Comentarios

i0x71 picture i0x71  ·  5Comentarios

zllovesuki picture zllovesuki  ·  19Comentarios

TJC picture TJC  ·  10Comentarios