Your controller is not rebuilding your RAID 60 array because it can’t find a safe path forward.
A stalled rebuild is not a “slow rebuild” — it is a math failure, not a speed failure.
In RAID 60, a rebuild only starts if:
- both RAID-6 groups are internally consistent
- parity domains agree
- stripe sets align
- metadata generations match across groups
If any of these conditions are violated, the rebuild stalls at a cosmetic number — typically 0%, 1%, 5%, or 10%.
This is not random.
These percentages represent controller checkpoints, and when one fails, the rebuild halts to prevent catastrophic data loss.
1. What’s Actually Stalling the Rebuild?
A RAID 60 rebuild halts when the controller detects one of these conditions:
A. Parity or Stripe Alignment Doesn’t Validate
This means:
- one RAID-6 group is ahead of the other
- partial writes were committed at different times
- “stripe truth” (the expected math) doesn’t match reality
Controllers will NOT rebuild when truth is uncertain.
B. Group-Level Parity Divergence
If Group A and Group B disagree on even one stripe position, the rebuild cannot proceed.
This is the #1 cause of RAID 60 rebuilds stuck at 0–10%.
C. Silent Parity Mismatch
No error messages.
No SMART issues.
No “degraded” flag.
Just invalid math — a parity domain that no longer matches its data domain.
This is invisible to:
- Windows
- Linux
- VMware
- RAID BIOS
…and nearly all commercial recovery tools.
D. Foreign Config Drift
During rebuild preparation, controllers compare:
- timestamps
- sequence numbers
- last-known writes
- prior state indicators
If Group A reports “rebuild-ready” and Group B reports “prior pending write,”
the controller refuses to proceed.
E. Partial Overwrite From a Prior Failed Rebuild
This one is deadly.
A failed rebuild yesterday may have:
- written partial parity
- truncated a stripe set
- updated only one group’s parity domain
This instantly breaks group coherence.
A second rebuild attempt will stall immediately.
2. Why the Controller Locks the Array Instead of Finishing the Job
Because RAID 60 is two arrays pretending to be one.
If one RAID-6 group is even slightly out of sync with the other, the controller has no deterministic way to regenerate the missing data:
**Which group is right?
Which stripes are current?
Which parity domain is “truth”?**
If it guesses wrong → total data loss.
That’s why it stops.
3. A Stalled Rebuild Is a Warning, Not a Failure
The rebuild is telling you:
“I’m not touching this until the parity math makes sense.”
That is the safest thing the controller could do.
Because once a rebuild begins:
- mismatched parity is overwritten
- partial writes are locked in
- incorrect sequences propagate across groups
A forced rebuild guarantees irreversible corruption.
<h3>Diagnostic Overview</h3>
<ul>
<li><strong>Device:</strong> RAID 60 array (RAID 6 groups striped under RAID 0)</li>
<li><strong>Observed State:</strong> Rebuild stuck at 0%, 1%, 5%, 10%, or never starts</li>
<li><strong>Likely Cause:</strong> Group desync, parity-domain mismatch, or prior partial rebuild</li>
<li><strong>Do NOT:</strong> Force rebuild, import foreign config, or reseat drives</li>
<li><strong>Recommended Action:</strong> Offline imaging, group virtualization, parity-domain comparison, stripe alignment, safe math-first reconstruction</li>
</ul>
5. Symptom → Meaning → Correct Action
SYMPTOM 1 — Rebuild Stuck at 0%
Meaning: Parity domains disagree
Action: Extract & compare group metadata
SYMPTOM 2 — Rebuild Jumps to 5% and Stalls
Meaning: One group is ahead by several stripe commits
Action: Virtualize groups separately
SYMPTOM 3 — Rebuild Won’t Start After Adding a New Disk
Meaning: Foreign-config mismatch
Action: Clone before touching controller logic
SYMPTOM 4 — Rebuild Progresses for Seconds, Then Fails
Meaning: Prior partial rebuild overwrote parity
Action: Identify damaged parity segments
SYMPTOM 5 — Controller Attempts Rebuild on Wrong Group
Meaning: Incorrect group selected as “truth source”
Action: Manual domain alignment
6. How ADR Recovers RAID 60 When Rebuilds Won’t Start
ADR’s RAID Inspector™ performs the parts of the rebuild your controller can’t safely do.
1 — Extract Full Metadata Per Disk
Each group is analyzed independently.
2 — Reconstruct Both RAID-6 Groups Virtually
No writes to the original drives.
3 — Parity-Domain Comparison
Determines which group contains the newest, valid writes.
4 — Stripe Offset Evaluation
Finds the exact point where groups diverged.
5 — Controlled Mathematical Realignment
Groups are brought back into coherence without destructive writes.
RAID Triage Center – RAID 60 Triage – RAID 60 Technical Notes