¿El envío/recepción de ZFS falla, el destino se ha modificado debido a una consulta del espacio de usuario de zfs?

¿El envío/recepción de ZFS falla, el destino se ha modificado debido a una consulta del espacio de usuario de zfs?

Utilizo zfs send/receive para replicar un sistema de archivos zfs en otro servidor todos los días. El flujo de trabajo es el estándar de envío y recepción:

# 1. create snapshot on source
zfs snapshot ${source_fs}@${today}
# 2. send incremental update from yesterday to today to target
zfs send -i ${one_day_ago} ${source_fs}@${today} | ssh user@${target_host} "zfs receive ${target_fs}"
# 3. destroy old snapshots from two days ago on source and target
zfs destroy ${source_fs}@${two_days_ago}
ssh user@${target_host} "sudo zfs destroy ${target_fs}@${two_days_ago}"

Esto funcionó bien por un tiempo. Sin embargo, ahora recibo este error de zfs receive:

cannot receive incremental stream: destination pool/filesystem has been modified since most recent snapshot

zfs list -t snapshoten el objetivo muestra un pequeño valor en la USEDcolumna de la instantánea más reciente (alrededor de 100K). Esto debería ser cero. El sistema de archivos no está montado en el destino.

Tengo un script que verifica las cuotas de zpools y zfs. La consulta de las cuotas actuales (con zfs userspace $filesystem -pH -o name,used,quota -s used) parece ser lo que modifica el sistema de archivos. ¿Es esto de esperar? No entiendo por qué una consulta de algunos números modifica el sistema de archivos.

Utilizo Ubuntu 20.04 con OpenZFS 0.8.3 desde los repositorios de Ubuntu.

Respuesta1

Los sistemas de archivos zfs desmontados no pueden modificarse mediante nada excepto recibir/destruir y... (bueno, eso es prácticamente todo) solicitudes. Cualquier solicitud de zfs sobre estadísticas del sistema de archivos no debería modificar el contenido de fs. Entonces, para concluir, dudo mucho que zfs userspaceesté modificando algo (y dudo que sus conjuntos de datos zfs estén desmontados). Pero si me equivoco (acerca de zfs userspace), esto es claramente un error y uno enorme.

información relacionada