RFE: add function 'bd_btrfs_replace_device' to btrfs plugin
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- c, linux
- Área
- operating-systems
Línea de trabajo
The request is to add a bd_btrfs_replace_device function to the btrfs plugin, wrapping btrfs replace start as an alternative to the add-then-remove sequence. Read the existing btrfs plugin device-management functions first, using the linked UDisks BTRFS documentation as the reference for the expected behaviour. Done means a new function, its test coverage, and a note on the size caveat that the replacement device must be at least as large as the source.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
http://storaged.org/doc/udisks2-api/latest/gdbus-org.freedesktop.UDisks2.Filesystem.BTRFS.html
Instead of AddDevice followed by RemoveDevice, it's preferred to use btrfs replace. Both btrfs device add/remove imply file system resize, and also a relatively expensive balance. Whereas replace is a variation on scrub, and is a sort of virtual and temporary raid1 between the device being replaced and the new device. Both devices are used for reads and writes, so there's better safety as well as performance.
There are two current caveats: the replacement block device must be equal to or larger than the device being replaced; and once replacement is complete, there is no automatic resize (grow) to take advantage of space for a larger device.
It's actually more expedient to do a minimal resize (shrink) of a device being replaced, in order to make it possible to use replace instead of add followed by remove.
man btrfs replace
start [-Bfr] <srcdev>|<devid> <targetdev> <path>
_Originally posted by @cmurf in https://github.com/storaged-project/udisks/issues/803
- Lenguaje dominante
- C
- Estrellas
- 137
- Forks
- 64
- Merge medio
- 1 d 5 h
- PR fusionados (30 d)
- 3
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 storaged-project/libblockdev
-
fails to build with libnvme3 (nvme-cli 3.0)Posiblemente ocupada @tbzatek la tomó hace 39 días. Abierto
storaged-project/libblockdev#1211 · 4 comentarios · 1 asignado ·
-
RFE
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
storaged-project/libblockdev#1093 · 3 comentarios ·
-
Dificultad 4/5 Más de una semana Aptitud para principiantes 18/100
storaged-project/libblockdev#1067 ·
-
Dificultad 3/5 Medio día Aptitud para principiantes 40/100
storaged-project/libblockdev#1060 · 1 comentario ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 12/100
storaged-project/libblockdev#977 · 1 comentario ·
Todos los issues de storaged-project/libblockdev
Issues similares
-
dspromote: /etc/exports uses -alldirs on non-mount-point directories, so mountd exports nothingAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
nextbsd/nextbsd-userland#434 ·
Los mantenedores suelen responder en 1 día
-
[YSQL] Local-node initdb reads postgres.bki, but YB clusters bootstrap only from yb_postgres.bkiAbiertoarea/ysql kind/enhancement priority/low status/awaiting-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
yugabyte/yugabyte-db#35763 ·
Los mantenedores suelen responder en 1 día
-
[mimalloc] update to 3.6.0Abiertocategory:port-update
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 2 días
-
emerge failure MARK mark-unstable media-kit
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
macaroni-os/mark-issues#834 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
NVIDIA/open-gpu-kernel-modules#1479 · 2 comentarios ·
Los mantenedores suelen responder en 1 día