Btrfs es considerado por muchos el futuro sistema de ficheros estándar de Linux. Sus avanzadas características abren puertas a nuevas posibilidades en lo que se refiere a administrar un sistema operativo Linux, no solo a nivel de servidores, sino también en el escritorio, donde podría normalizar el uso de las instantáneas.
Sin embargo, el camino de Btrfs no ha estado carente de obstáculos, y de hecho son muchas las voces que señalan que le ha costado bastante alcanzar cierto grado de madurez. A pesar de que a día de hoy es una tecnología importante para compañías como Facebook y ha conseguido ser establecido por defecto en las ediciones de Fedora para el escritorio, Btrfs arrastra desde hace años un problema con las configuraciones en RAID 5 y RAID 6.
El origen del problema está en el hecho de que se detectó un fallo en el código de Btrfs que provoca que el kernel recalcule la paridad de manera incorrecta en RAID 5. A pesar de que este funcionamiento erróneo fue detectado en 2016, al parecer todavía sigue presente en las versiones más recientes del kernel y los componentes relacionados con el sistema de ficheros, así que los responsables han tomado la decisión de “desalentar fuertemente” el uso de Btrfs en RAID 5 y RAID 6 debido a que el código no es seguro para su uso en producción.
El código defectuoso de Btrfs para RAID 5 y RAID 6 ha sido parcheado en diversas ocasiones a lo largo de los últimos años, pero todavía sigue estando lejos de la fiabilidad ofrecida en las configuraciones en RAID 0, RAID 1 (espejo) y RAID 10. Como resultado de la medida tomada, de la mano de SUSE y a partir de btrfs-progs 5.11 saltarán avisos cuando se intente crear una partición Btrfs en configuraciones RAID 5 y RAID 6.
Las advertencias fueron escritas el año pasado, pero no fueron fusionadas hasta esta semana para la versión 5.11 de btrfs-progs. La intención es que esta medida sea algo provisional, porque se espera en un futuro no muy lejano que el soporte de Btrfs para configuraciones RAID 5 y RAID 6 esté definitivamente maduro y sea seguro para producción.
Reconocer abiertamente que tu software o producto no es competente para un contexto específico es un gesto bastante valiente, sobre todo porque se está reconociendo que no es lo suficientemente bueno como para cubrir todas las necesidades de los consumidores o usuarios. Esperemos que Btrfs corrija dentro de poco una carencia que lleva arrastrando demasiado tiempo.