Modos de fallo y manejo¶
Catálogo de cosas que pueden salir mal en el sistema y cómo detectarlas/recuperarse. Responde la pregunta guía de modos de fallo y cierra el diseño de robustez.
Contexto¶
Un sistema con piezas móviles + discos viejos + conectores ciclados tiene muchos puntos de fallo. Diseñar el manejo de errores desde el inicio evita corromper datos o romper hardware. Cruza diseno mecanico, power y hot plug e integracion software robot.
Contenido¶
| Fallo | Detección | Manejo |
|---|---|---|
| Mal mate del conector (no enumera el disco) | Tras energizar, el disco no aparece en /dev/disk/by-id en N s |
Reintentar mate (retract + re-insert) hasta K veces; luego marcar slot "error" y avisar |
| Disco agarrado equivocado | Serial leído al montar ≠ serial esperado (identificacion discos) | Abortar, devolver disco al slot, re-leer barcode |
| Disco muerto / no spin-up | Sin spin-up completo en timeout; SMART falla | Marcar disco "dead" en el catálogo; no reintentar energizar (riesgo); avisar |
| Pico de corriente / PSU trip | Brown-out al energizar | Staggered spin-up; energizar de a uno; PSU con margen |
| Brazo desalineado / pierde pasos | Endstop no se alcanza en homing; fallo de mate recurrente | Re-home; los steppers sin encoder pierden pasos → homing frecuente (diseno mecanico) |
| Disco atascado en slot/dock | Corriente del stepper sube / no llega a posición | Parar (límite de corriente), avisar, no forzar |
| Corte de energía a mitad de operación | — | Nunca cortar power a un disco sin spin-down/flush previo; journaling del estado del robot para reanudar |
| Etiqueta barcode ilegible | Cámara no decodifica | Fallback a posición fija + verificación por serial al montar; re-etiquetar |
| Bit rot / disco degradado | Scrub periódico (SnapRAID parity / checksums) | Restaurar de paridad o copia redundante; git-annex numcopies |
Principios¶
- Fail-safe sobre datos: ante duda, no escribir y no cortar power sin flush. Un fallo mecánico no debe corromper datos.
- Verificación de serial obligatoria antes de servir/escribir: barrera contra mover el disco equivocado.
- Reintentos acotados (K=2–3) y luego estado "error" + alerta — coherente con la regla de gaps "blocked tras 2 intentos".
- Journaling del estado del robot (qué disco está dónde, operación en curso) para reanudar tras corte.
Relaciones¶
- Cruza: diseno mecanico, power y hot plug, identificacion discos, integracion software robot.
- Redundancia de datos: ver mergerfs+SnapRAID / git-annex
numcopiesen integracion software robot.
Citas / evidencia¶
- Verificación de serial vía
/dev/disk/by-id— software catalogo y identificacion. - Picker comercial detecta presencia de cartucho (cartridge detector) — diseno mecanico bom y prior art.
Abierto / gaps¶
- Definir timeouts concretos (spin-up, mate) según los discos reales del usuario.