Walter Infrastructure Incident Report · Root Cause Analysis
Severity 1 · Storage Subsystem

Storage Array
Multi-Device Drop and Recovery

Incident WI-2026-0731-01 · 31 July 2026

EnvironmentInternal Provider Infrastructure
Incident window20:35 to 21:07 local
Severity1 · Critical
StatusService restored

Executive summary

Summary

On the evening of 31 July 2026, one of the storage arrays at the site stopped working. Four of its twelve hard drives went unreachable at exactly the same moment. That array is built to survive two drives failing, so four was more than it could absorb, and its 26.6 TB of storage went offline. Other storage at the site was unaffected and stayed available throughout, but the services that read from this particular array stopped working.

Service was back thirty-two minutes after Walter Infrastructure (WI) began work on it. Everything on the system was checked and found present and readable. No evidence of data loss.

The drives themselves turned out to be fine. The fault was in the electronics that connect the drives to the rest of the machine, which locked up and stopped answering for four of them. Switching the power off and back on cleared it, and all twelve drives have worked normally since, with no errors recorded.

Two points matter going forward. First, the storage came back running on ten of its twelve drives, so it currently has no spare capacity to absorb another failure. Putting the last two back requires several hours of heavy work, which is scheduled rather than rushed. Second, what made the electronics lock up in the first place, after thirty-two days of running without incident, is not yet established. Until it is, WI is treating the machine as unproven.

Because of those two points, WI began copying the highest-value data off that system the same evening, before doing anything else to it. Those copies are running now. The repair work happens once they finish, so that if anything goes wrong during the repair, nothing is lost.

Time to restore32 minutes
Data lossNone found
Volume integrityVerified, all datasets present
Device health12 of 12 nominal
Array redundancy10 of 12, rebuild pending
I/O errors since recoveryZero
Failure mechanismIdentified
TriggerUnexplained, monitored
This report covers Walter Infrastructure's own internal environment, not a client system, and is published as a worked example of the incident process. It is redacted for distribution: host names, network addresses, serial numbers, share names, volume paths and the nature of the stored data have been generalized. Device labels (NAS-01, NAS-02, NAS-03) are used consistently and map to real systems in the unredacted copy held with the site records. Technical detail follows the executive summary.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 1 of 19
Walter Infrastructure Environment and Impact

1. Affected subsystem

Section 1

NAS-01 is a sixteen-bay appliance on an ARM SoC platform. Bays are divided between a four-device flash pool and a twelve-device bulk pool. The two pools are independent arrays on independent controller paths, which is material to the analysis: the flash pool was unaffected throughout and remained mounted for the entire event.

AttributeBulk pool (affected)Flash pool (unaffected)
RAID levelRAID 6, left-symmetricRAID 5
Member count124
Chunk size64 KiB512 KiB
Superblock formatmetadata 1.0 (end of device)metadata 1.0
Usable capacity26.6 TB4.7 TB
Occupancy at incident21.6 TB (81%)6.6 GB
Filesystemext4, data=ordered, delallocext4
Failure tolerance2 devices1 device
Host bus topologySingle SCSI host, targets 4 through 154 discrete hosts, one per device

The twelve bulk devices share one host adapter and are addressed as sequential SCSI targets behind a fan-out stage. The four flash devices each present on their own host. That asymmetry is the first structural clue: a fault confined to one shared stage can take multiple bulk devices without touching flash.

Device ordering. Physical bay numbering on the chassis front panel is offset from the platform's internal slot numbering by the four flash bays. Front bay N corresponds to internal slot N+4, which corresponds to array device role N-1. The mapping was verified in both directions during the response by correlating panel indicators against slot state, and it is recorded here because a misread in either direction during a manual reconstruction would place devices in the wrong stripe order and destroy the array.

2. Scope of impact

Section 2
SystemRoleImpactDetail
NAS-01 bulk poolBulk storageOfflineArray not assembled. Volume unmounted. Host OS remained up throughout with 32 days uptime.
NAS-01 flash poolSecondary tierNominalIndependent array, independent controller path. Mounted and writable for the entire event.
Consumer AUser facingFailedClient-side share mount dead at the OS layer. Confirmed by fresh remount attempt, not a stale session. Container stopped by hand to end a retry loop that had accumulated roughly 4,700 reconnect attempts.
Consumer BBackgroundFailedTwo network mounts to the affected pool stale. Stopped during response.
Consumer CBackgroundFailedShares the same two mounts. Stopped during response.
Hypervisor cluster7 nodesNo impactTwo storage definitions referencing the array showed inactive on every node. Guest configuration files on all seven nodes were parsed to confirm no virtual disk resided on either definition.
NAS-02, NAS-03Secondary storageNo impactAvailable throughout. Subsequently used as recovery targets.
Backup platformGuest backupsNo impactDatastore resides on NAS-03 flash tier, physically separate from the affected array. Verified during response.
Dependency discovery is not reliable by name. Three of the four service dependencies were discoverable by searching container mount definitions for the array's identifier. The fourth was not: its storage volume is named for the data it carries rather than the system it comes from, so a name-based search returned a false negative and initially reported it as unaffected. Dependencies were re-enumerated by inspecting volume driver options for the array's network address rather than by matching names. The corrected dependency map is retained with the site documentation.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 2 of 19
Walter Infrastructure Timeline

3. Sequence of events

Section 3 · All times local, 31 July 2026
TimeEventTechnical detail
01:03:37Last coherent array updateFinal synchronized superblock write across all surviving members. Established retrospectively from on-disk metadata; not observable at the time.
20:35Investigation openedEscalation raised on consumer service failure.
20:37Fault characterizedBulk array absent from /proc/mdstat entirely. Not degraded, not assembled. Flash pool present and healthy. Host uptime 32 days, confirming a mid-uptime loss rather than a boot-time assembly failure.
20:38Device enumerationAll 16 block devices present under /dev. Platform storage tool flagged four slots and reported the array as requiring recovery, with superblock data reported empty on those four.
20:39Superblock surveymdadm --examine against all twelve member partitions. Eight returned complete and mutually consistent metadata. Four returned no superblock detected.
20:40Kernel log analysisErrors on the four devices all of class hostbyte=DID_NO_CONNECT, repeating. Bus addresses correlated.
20:41Direct read testdd of the first 8 MiB from each raw device. Four failed with I/O error, one of which could not be opened at all. Surviving members returned 94 to 140 MB/s.
20:42Failure pattern identifiedFailed devices occupy SCSI targets 8, 10, 12 and 14 on a single host. Targets 4 through 7 wholly unaffected; from target 8 upward, failures alternate exactly. Pattern inconsistent with independent device failure.
20:45Recovery metadata capturedFull mdadm --examine output for all eight surviving members, partition tables, bus topology map and platform storage state written off-device, then committed to two independent repositories.
20:46Geometry error correctedChunk size in prior working notes did not match the captured superblocks. Corrected before any reconstruction was contemplated.
20:47Controlled shutdown issuedCold power cycle selected over warm reboot. A warm reboot does not remove power from the fan-out stage and therefore cannot reset it.
20:48:53Host left networkExpected. Network stack stops early in the shutdown sequence.
20:58Shutdown stalledNot complete after 10 minutes. Consistent with the block layer awaiting SCSI command timeouts and error recovery escalation against four unresponsive targets. Forced power removal authorized after confirming the bulk volume was already unmounted, no writes were in flight, and the only mounted filesystem was the near-idle journaled flash pool.
21:00Cold power cycleChassis power removed and restored.
21:07Service restoredArray assembled and volume mounted. State clean, degraded. 10 of 12 devices active, 0 failed, 0 spare.
21:07Post-recovery verificationAll twelve raw devices read nominally. Zero DID_NO_CONNECT or I/O error events logged since boot. Volume reports 21.6 TB in use, all datasets enumerable.
21:13Volume inventory capturedFull directory tree plus recursive long listing with sizes and timestamps. 45,052 file entries, 13,622 directories, written off-device and committed.
21:30Secondary finding raisedPredictive health warning identified on an unrelated device in NAS-03 during evaluation of that system as a copy target.
22:57First protective copy startedDetached transfer process launched on NAS-01 itself.
23:03Priority dataset copy startedHighest-value dataset redirected to the fastest available path.
23:09All copy legs runningFour datasets, three destinations, one of them multipath.
23:16Consumer A restoredVerified reading its dataset and self-indexing. Two write-capable consumers deliberately held offline.
On the interval between failure and investigation. The array stopped at 01:03 and was picked up at 20:35. That interval is a function of what the array carries, not of monitoring coverage. No production service, hypervisor node, backup job or other storage array was affected, which is why nothing escalated. The consumers of this array are low-priority services whose brief unavailability carries no operational consequence, and they sit outside the alerting scope deliberately, because alerting on them would bury the alerts that matter. Detection for that service class is by observation rather than by page, and it behaved as designed. Severity is graded on the condition of the infrastructure, not on the criticality of the services it carries: an event that exceeds an array's failure tolerance or carries potential data loss until proven otherwise is Severity 1, and this one did both at detection.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 3 of 19
Walter Infrastructure Root Cause Analysis

4. Failure mechanism

Section 4
Failure mechanism. The SATA fan-out stage that presents the twelve bulk devices to the single host adapter entered a hung state in which it ceased responding for four of its attached targets. The storage devices did not fail and the data recorded on them was never at risk. The condition persisted until power was removed from the backplane. All twelve devices returned to nominal operation. The trigger is a separate question, open and carried in Section 8.

5. Failure signature

Section 5

Bus address distribution

All twelve bulk devices attach to one SCSI host as targets 4 through 15. Mapping the failures against that address space produced the finding that drove the diagnosis:

host:target   state          host:target   state
  4:4         nominal          4:10        NO CONNECT
  4:5         nominal          4:11        nominal
  4:6         nominal          4:12        NO CONNECT
  4:7         nominal          4:13        nominal
  4:8         NO CONNECT       4:14        NO CONNECT
  4:9         nominal          4:15        nominal

Targets 4 through 7 are entirely unaffected. From target 8 upward the failures alternate without exception. Four devices failing independently in the same second is already implausible; four devices failing in an arithmetic sequence of bus addresses is not a failure mode that independent devices exhibit. The distribution points at a shared stage, and specifically at a subset of lanes within it.

Error class

Every logged error carried hostbyte=DID_NO_CONNECT with driverbyte=DRIVER_OK. That combination states that the host adapter was unable to reach the target at all. It is categorically different from a device returning a medium error, an unrecovered read error, or a timeout, which are what a failing device produces. The driver layer reported itself healthy while the transport reported no path.

Simultaneity, established from array metadata

All eight surviving members carried identical event counters and update timestamps, with a consistent array state bitmap across every member:

FieldValue across all 8 surviving members
Event counterIdentical on all eight
Update timestampIdentical on all eight, 01:03:37
Array state bitmapConsistent, showing the same four positions absent
Checksum statusCorrect on all eight
Device role assignmentSequential and complete for the surviving set

Identical event counters across every survivor establish that the array stopped at a single instant with no split-brain condition and no torn writes. Progressive device degradation produces divergent event counters as members drop at different times. This state is the strongest single evidence of a bus event, and it is what made recovery low risk: the surviving stripe set was internally coherent.

Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 4 of 19
Walter Infrastructure Array State Forensics

5. Failure signature, continued

Section 5

Physical presence maintained

All sixteen block devices remained enumerated under /dev for the duration; nothing disappeared from the bus. The devices were addressable as objects while unreachable for I/O, consistent with a fan-out stage that has stopped forwarding transactions rather than one that has dropped its targets.

Recovery behavior

A cold power cycle restored all four devices to full function; a genuinely failed storage device rarely does, while a hung controller routinely does. With the address pattern and the coherent surviving metadata, the evidence is substantially more consistent with a hung shared transport stage than with four independent device failures. Confirmatory rather than diagnostic, but it weighs heavily against device failure.

6. Post-recovery array state

Section 6

The array reassembled with ten of twelve members. Understanding why two rejoined and two did not is central to the remediation plan, because the two categories require different handling.

Device groupCountSuperblock stateOutcome on restart
Never affected8Intact, coherentAssembled normally.
Affected, metadata intact2Intact, readable once bus restoredRejoined automatically and are active, in-sync members. Their metadata was never damaged; it was unreadable through the hung stage, which the platform tool reported as an empty superblock.
Affected, metadata absent2Genuinely absentDid not rejoin. Read nominally at the device layer but hold no array metadata, so they cannot be reassembled and must be added as new members.
An early reading was corrected here. The platform's storage tool reported empty superblocks on all four affected devices during the fault. That reading was accurate for two of them and an artifact of unreadability for the other two. The distinction was not determinable while the bus was hung, and it materially changed the recovery outlook: two devices returning with intact metadata is the difference between a ten-member assembly and an eight-member one, and an eight-member assembly of a twelve-device RAID 6 does not mount.

Consequence for redundancy

A twelve-device RAID 6 sustains two absent members. The array currently has exactly two absent. It is therefore operating correctly but with zero remaining tolerance: a single further device event during the present window would take the volume. This is the dominant residual risk and it governs the sequencing in Section 11.

Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 5 of 19
Walter Infrastructure Array State Forensics · Trigger Analysis

7. Stale device error flags

Section 7

Four bay indicators continued to show error state after recovery, including two bays whose devices were at that moment active, in-sync array members. Inspection of the platform configuration store found exactly four persisted per-device error keys, one per illuminated bay.

PropertyFinding
Flag count4, matching the four illuminated bays exactly
Storage locationPlatform configuration store, persisted across reboot
Correlation with live stateNone. Two flagged bays are active array members.
Correlation with device healthNone. All four devices test nominal.
Clearing methodRemoval of the persisted keys followed by a restart
Operational significanceCosmetic, but actively misleading during triage
These indicators cannot be used to assess array health on this platform. During the response the panel reported four failures while the actual state was zero failed devices and two non-member devices. Any future triage on this hardware should treat bay indicators as advisory only and derive state from the kernel array table and direct device reads.

8. Trigger analysis

Section 8 · Unresolved

The mechanism is established. The trigger is not. The unit had been running thirty-two days without incident and had not been physically disturbed, opened, or moved for several years prior. The following remain open and are ordered by assessed likelihood:

CandidateAssessment
Controller firmware defectConsistent with a hang that clears on power cycle and leaves no device-level evidence. A firmware revision review is pending and is the cheapest possible mitigation if a relevant fix exists.
Transient power conditionWould plausibly affect a subset of lanes on a shared stage. No corroborating evidence available; the platform does not log power events at the resolution required.
Thermal eventDevice temperatures sampled post-recovery are nominal. No historical thermal record retained at useful granularity, so this cannot be excluded retrospectively.
Backplane degradationConsidered and rated unlikely. A physical connection fault does not self-repair across a power cycle. Not excluded entirely, since intermittent contact under thermal cycling could present this way, but it does not fit the evidence as well as the alternatives.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 6 of 19
Walter Infrastructure Hypotheses Tested

9. Hypotheses raised and tested

Section 9

Five hypotheses were formed during the response and none survived testing. The verdict on each is worded to match the strength of the test behind it. They are recorded in full because the eliminations are part of the finding, and because two of them were held with high confidence before being tested.

H1 · Four devices failed independently

Rejected on the evidence. All four returned to full function after power cycling and subsequently tested indistinguishably from their peers on sequential read and seek latency. Four independent failures do not distribute across an arithmetic sequence of bus addresses, and the simultaneous return of all four on a single power cycle is not a behavior independent failures produce.

H2 · Backplane or cabling fault

Substantially less likely. This was the leading hypothesis through the first phase of the response and it did not survive the recovery. The alternating-lane distribution fit a physical connector or lane fault well, and hardware replacement was being scoped on that basis before the cold cycle. A fixed connection fault does not repair itself when power is removed and restored; an intermittent contact fault could, so this one is downgraded rather than closed, and Section 8 retains backplane degradation as an open, lower-ranked candidate.

H3 · Array metadata corruption

Disproved by direct observation. Metadata reported absent on four devices during the fault proved intact on two of them once the bus recovered. Superblocks in this format reside at the end of the member partition; a read of that region is still a read, and an unreachable device returns the same result as an unwritten one. The platform tool did not distinguish the two cases.

Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 7 of 19
Walter Infrastructure Hypotheses Tested, continued

H4 · Array write performance limited by stripe cache depth

Disproved by measurement. During post-incident performance analysis of NAS-03, the RAID stripe cache was found configured at half the kernel default. On a parity array a starved stripe cache prevents write coalescing into full stripes and forces read-modify-write cycles, which fit the observed write throughput closely. The parameter was raised through four values spanning a 64-fold increase and measured at each step.

Stripe cache depthSustained write
Baseline (kernel default halved)96.9 MB/s
8x baseline93.6 MB/s
32x baseline95.1 MB/s
64x baseline92.5 MB/s

Flat within measurement noise. The hypothesis was rejected and the parameter returned to its original value rather than left changed on the strength of a theory.

H5 · Array write performance limited by filesystem stripe misalignment

Disproved by measurement, but a real defect was found and corrected. The ext4 stripe width recorded on the affected volume corresponded to a smaller member count than the array actually has, consistent with the array having been expanded at some point without the filesystem geometry hint being updated. Every write batch was therefore being aligned to a boundary that did not match the true stripe, which forces read-modify-write on a parity array and fit the symptom precisely.

The geometry was corrected to match the array. Throughput before and after was measured across three runs and did not move. The misconfiguration was genuine and worth fixing on its own merits, but it was not the constraint. Both H4 and H5 were plausible, both were measured rather than assumed, and both were discarded when the data did not support them.

Why rejected hypotheses appear in this report. An RCA that lists only the conclusion gives the reader no way to judge how well the conclusion is supported. Recording what was tested and rejected distinguishes what is known from what was expected, and prevents a future engineer from re-running the same eliminated tests during the next event on this hardware.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 8 of 19
Walter Infrastructure Response Methodology

10. Method

Section 10

The array was recoverable or it was not, and that could not be known until it was characterized. Sequencing every step to preserve the means of recovery, before attempting any recovery, followed from that.

Read-only until characterized

No corrective action was taken until the failure mode was understood. The diagnostic set comprised device enumeration, bus topology mapping, kernel ring buffer analysis, array superblock inspection across all members, raw device reads, and platform storage state queries. None of these writes to the array. A rebuild initiated at this stage against the device-failure hypothesis, which was the initial reading, would have written parity across a coherent stripe set on the basis of a misdiagnosis.

Metadata capture preceding any state change

Complete superblock output for every surviving member, plus partition geometry, bus topology and platform storage state, was written off the device and committed to two independent repositories before the shutdown command was issued. That capture is what would have permitted a manual array reconstruction had assembly failed on restart, since it preserves device role ordering, chunk size, metadata format and array identity.

The capture also caught an error. A geometry parameter recorded in prior working notes did not match the value in the captured superblocks. Reconstruction using the incorrect value would have written a stripe layout inconsistent with the on-disk data and destroyed the volume irrecoverably. The corrected value was propagated to the documentation before any recovery path was contemplated.

Cold cycle selected deliberately over warm restart

A warm restart does not remove power from the storage backplane or the fan-out stage, so against a transport-level hang it changes nothing while consuming the one clean shutdown state available. Full power removal was selected specifically because the diagnosis placed the fault below the device layer.

When the shutdown stalled past ten minutes, forced power removal was authorized only after establishing three conditions: the bulk volume was already unmounted so no writes were in flight, the surviving members held coherent metadata so no in-progress stripe update could be truncated, and the only mounted filesystem was the near-idle journaled flash pool.

Inventory preceding protection

A full recursive listing of the volume was captured while mounted and before any copy operation began: 45,052 file entries with sizes and timestamps, and 13,622 directories. Had the array been lost during the subsequent multi-hour copy, that listing would have been the authoritative record of contents.

A first attempt at the inventory silently produced directories but no file entries, since the platform's embedded userland lacks the printf extension used. The failure was caught by validating the output row count against expected magnitude rather than by assuming success, and the method was changed to a recursive long listing.

No changes were made to the affected array during diagnosis. No rebuild, no device removal or reseat, no array creation, no writes. The only state change to NAS-01 during the incident window was the power cycle itself.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 9 of 19
Walter Infrastructure Verification

11. Verification performed

Section 11
CheckResultMeasure
Array assembly stateDegradedActive on 10 of 12, 0 failed, 0 spare, state clean
Volume mount and enumerationPassMounted, 21.6 TB in use, all datasets readable
Raw device read, all 12Pass148 to 264 MB/s sequential, sampled at three offsets each
Seek latency, all 12PassWithin a 7% band across the set, no outliers
Kernel error count since bootPassZero transport or I/O errors
Array sequential read, degradedPass560 MB/s sustained
Guest storage exposurePassAll 7 hypervisor nodes parsed, no guest disk on either storage definition
Backup datastore integrityPassResides on separate hardware, unaffected
Device health telemetryUnavailablePlatform health tooling returns no usable output on this model. Device condition currently inferred from performance testing. See Section 15.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 10 of 19
Walter Infrastructure Data Protection Engineering

12. Transport selection

Section 12

With the array carrying no remaining tolerance and the trigger not yet established, protective copies were started ahead of the rebuild. Path and protocol selection were driven by measurement on the real path rather than by specification, and several intuitive assumptions did not survive testing.

Path or testResultFinding
NAS-01 degraded array, sequential read560 MB/sRAID 6 dual-parity reconstruction cost on this SoC is far lower than assumed
NAS-01 to NAS-03 disk tier, local benchmark93 to 97 MB/sDid not predict network transfer rate. See below.
NAS-01 to NAS-03 disk tier, 80 GB sustained with fsync235 MB/s2.5x the local figure. The local benchmark is not a valid predictor for this workload.
NAS-01 to NAS-03 flash tier367 MB/sSingle large sequential file
NAS-01 to NAS-02, single path70.7 MB/sLink limited. Target writes at 407 MB/s locally.
Alternative transport, same path166.9 MB/sAgainst 367 MB/s for the selected protocol. Processor bound on the ARM SoC.
Many-small-file workload, flash tier42 to 95 MB/sSame path that benchmarks at 367 MB/s on one large file

Benchmark validity

Three measurement traps were identified and controlled for. Each would have produced a materially wrong plan.

TrapControl applied
Write cache flattering short testsTargets export with asynchronous write semantics and hold roughly 10 GB of free memory, so a 4 GB write reports near-memory speed. All planning figures were taken from 80 GB transfers with an explicit sync, well past cache.
Block size against stripe geometryThe NAS-03 disk array is a five-member RAID 5 with a 512 KiB chunk, giving a 2 MiB full stripe. A 1 MiB test block forces read-modify-write on every operation and produced 19 to 21 MB/s, roughly a fifth of the stripe-aligned figure of 93 MB/s. All benchmarks were re-run at or above full-stripe width.
Virtual interface speed reportingBridge and firewall-bridge interfaces report a nominal 10 Gb/s regardless of the physical link beneath them. Link speeds were taken from physical interface members only, which corrected an initial overestimate on one node by a factor of ten.

Protocol selection

Two transports were measured on identical hardware and path. The selected protocol delivered 2.2 times the throughput of the alternative, with the difference attributable to per-byte processor cost on the ARM SoC rather than to the network. With four transfer legs running concurrently against the same processor, the lower-overhead protocol was selected for all legs rather than mixed, so that no leg competes for cycles with the others.

Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 11 of 19
Walter Infrastructure Multipath Engineering

13. Multipath transfer engineering

Section 13

NAS-02 carries the largest transfer leg and sits behind a 1 Gb/s link, making it the critical path for total elapsed time. Two options were evaluated to raise its throughput.

Link aggregation, evaluated and rejected

The core switch supports 802.3ad and exposes link aggregation group configuration, membership, and per-port protocol parameters. It exposes no load-balancing or hash policy setting at any level of its configuration interface. With a fixed firmware hash, every frame between one source address and one destination address resolves to the same physical member, so a single transfer between two hosts would occupy one link and gain nothing. Aggregation was rejected on that basis before any cabling was changed.

Discrete-address multipath, implemented

The second network interface on NAS-02 was assigned its own address in the same subnet, and the transfer was split into two independent streams targeting the two addresses. Distinct destination addresses on distinct interfaces produce genuinely distinct paths with no dependence on switch hash behavior.

The known failure mode for same-subnet multi-homing is the host answering address resolution for either address on either interface, which collapses both streams onto one link. Address resolution behavior was constrained so that each interface responds only for its own address, and the result was verified from the source host rather than assumed: the two destination addresses resolve to two different hardware addresses, matching the two physical interfaces.

The second interface was found carrying a stale configuration from a previous network topology, on a subnet with no route anywhere in the current environment. It had link state up and would have appeared functional to a casual check, while being unreachable from every host. It was reconfigured as part of this work.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 12 of 19
Walter Infrastructure Execution and Current State

14. Copy execution design

Section 14

Transfers use rsync over NFS, driven from the shell on NAS-01 itself rather than through the appliance's own replication interface. The source host holds local read access to every dataset, whereas an intermediary would require additional exports for two of the four datasets and would introduce a second network traversal. The source host is also the only component whose failure would halt the work regardless of where it was orchestrated, so placing the orchestrator there adds no failure mode.

Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 13 of 19
Walter Infrastructure Tooling Selection

Why the command line rather than the appliance's own sync tooling

The appliance ships backup and replication tooling that would have moved this data. It was not used, because this work had four requirements that are more readily met by driving rsync directly.

RequirementWhy it mattered here
Explicit phase sequencingWhich datasets run, in what order, and how many concurrently was the single decision governing total elapsed time. Running all four at once cost roughly 40% of achievable throughput to seek contention on the source array. That ordering needed to be expressed directly rather than configured per job.
Append-mode resume on one very large objectThe archival object is 1.5 TB. Checksum-verified resume re-reads the copied prefix on every restart, which is correct for many-object datasets but grows without bound on a single large one. Selecting append mode for that one transfer and verified mode for the others required per-transfer control of the resume semantics.
Plain-text logs outside the applianceProgress and failures needed to be readable from any host, and retained afterward for this report, without depending on the appliance's own interface being reachable.
Bounded mount-health checkingA hung network mount blocks indefinitely. The transfer wrapper tests mount responsiveness with a timeout and forces a remount rather than waiting, which is custom logic around each attempt.

The trade is that the work is scripted rather than configured, which is the correct trade for a sequence that runs unattended against an array with no redundancy. This is a selection on fit, not a judgment on the vendor tooling, which is appropriate for routine scheduled replication.

Design elementImplementation and rationale
Process detachmentSession-detached processes. Verified by test rather than assumed: a job was started, the control session was closed, and the job was confirmed still progressing on reconnection. The platform's terminal multiplexer is present but non-functional for detached launch on this build, which the test caught.
ResumabilityPartial transfers retained and resumed by append with checksum verification of the existing prefix, so an interruption mid-file resumes rather than restarting a multi-hundred-gigabyte object.
Failure handlingEach leg wraps its transfer in a retry loop that re-establishes its mount before each attempt. A transport interruption pauses the leg rather than ending it.
Ownership handlingOwner and group preservation deliberately omitted. Destination exports squash to a fixed identity, so preservation would emit an error per object. Destination ownership was aligned to the squash identity so that timestamp preservation succeeds and the transfer can terminate with a success code rather than looping indefinitely on a benign permission error.
LoggingPer-leg logs written to the unaffected flash pool, not to the degraded array.
Destination isolationDedicated destination paths created outside the platform's managed share structure, so no destination is visible to any indexing service on the target appliances. Writing into an existing indexed path would have produced duplicate catalog entries.
Service quiescingTwo write-capable services held offline for the duration. One writes sidecar files into the source tree and the other rewrites stored objects in place. Either would mutate source data mid-copy and render the copy inconsistent with its inventory.
DatasetDestinationPathRationale
Dataset ANAS-03 flash tierSingleHighest object count of the four. Flash absorbs per-object overhead far better than a parity disk array.
Dataset BNAS-03 disk tierSingleOne large sequential object, best case for a parity disk array.
Dataset CNAS-03 disk tierSingleSequenced behind Dataset B on the same leg to avoid seek contention on one array.
Dataset DNAS-02DualSplit across two physical paths. Placing the larger of the two bulk datasets on the faster link reduces total elapsed time by roughly 15 hours against the inverse assignment.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 14 of 19
Walter Infrastructure Current State

15. Current state

Section 15
ItemStateDetail
Volume availabilityAvailableMounted and serving
Array redundancyNone10 of 12 members against a tolerance of 2
Device healthNominalAll 12 reading at expected rates
Transport errors since recoveryZeroClean since 21:07
Protective copiesRunningFour datasets, three destinations, no errors logged
Consumer ARestoredVerified serving and self-indexing
Write-capable servicesHeldDeliberately offline pending copy completion
Bay indicatorsStale4 false errors, clearing bundled with the rebuild window
Device health telemetryUnavailableNo working method on this platform, see Section 17
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 15 of 19
Walter Infrastructure Secondary Findings

16. NAS-03 predictive device warning

Section 16 · Unrelated to the incident

Identified while evaluating NAS-03 as a copy destination. One device in its five-member parity array carries a predictive health warning from platform monitoring. The array is at full redundancy and the device performs normally under test.

ItemStateDetail
Array redundancyFullAll 5 members active and synchronized
Flagged device, sequential readNominalWithin the range of its peers at three sampled offsets
Flagged device, seek latencyNominalMid-range for the set. The slowest device in the array is a different member.
Device temperatureNominalNo thermal contribution
WarrantyOutside coverage term, so replacement proceeds as a purchase rather than a claim.
ReplacementScheduledSpecified and scheduled as planned lifecycle work. The array holds full redundancy throughout, and the device performs within its peer range under test.
Peer devicesWatchTwo further members are the same model and probable production batch, at equal age under equal workload
Do not remove the flagged device ahead of its replacement arriving. The array tolerates one absent member. Removing a functioning device early converts a fully redundant array into a degraded one for the entire procurement lead time, which inverts the intent. The correct sequence is to hot swap the replacement while redundancy is intact so that the rebuild proceeds from a healthy state.
A related benchmarking artifact was identified on this array. Its write throughput initially measured at roughly a fifth of its true rate because the test block size was half the array's full stripe width, forcing read-modify-write on every operation. The array is not fast, but it is not as slow as the first measurement indicated. Any future performance assessment of this array must use stripe-aligned block sizes.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 16 of 19
Walter Infrastructure Backup Coverage Audit

17. Backup platform verification

Section 17

The backup platform was examined during the response to establish whether the incident placed guest backups at risk. It did not. The datastore resides on NAS-03's flash tier, a different array on different hardware from the affected pool, and was available and intact throughout.

PropertyFinding
Datastore availabilityUnaffected for the duration of the incident
Deduplication ratio4.88 to 1, logical against physical. Material to any retention change: reducing retained snapshot count reclaims substantially less space than the count reduction implies, and reclamation occurs at garbage collection rather than at prune time.
Server rebuild pathDatastore content is fully recoverable by a replacement server pointed at the existing store, verified during the response. A lost backup server therefore costs configuration time rather than data, which lowers the criticality of protecting the server itself.
Coverage, current guestsCurrent to the most recent scheduled run
Coverage, recently provisioned guestsTwo guests have no snapshot history. Both were provisioned after the current job definition was written and have not yet reached their first scheduled run, which is expected rather than a failure.
Retention reviewFour guests hold snapshots older than the others. Scheduled for review alongside the retention policy, which is being revisited in light of the deduplication figure above.
The scheduled job is functioning. Coverage was verified against the platform's own guest inventory rather than assumed from job status, which is what surfaced the two pending guests and the retention question. Both are carried in Section 20.

18. Device health telemetry gap

Section 18

Neither standard device health tooling nor the platform's own health utility returns usable output on the NAS-01 hardware. Standard tooling is absent from the firmware image and the vendor utility returns empty results for every queried slot, including slots whose devices are demonstrably healthy. Device condition on this array is therefore currently inferred from throughput and latency testing rather than read from the devices.

This is a material limitation. A declaration that the array is healthy cannot presently be made on evidence, only on the absence of contrary indication. Resolving it is a prerequisite for closing the incident.

Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 17 of 19
Walter Infrastructure Actions and Decisions

19. Actions completed

Section 19
ActionStatusOutcome
Recovery metadata captured off-deviceCompleteCommitted to two repositories
Array geometry error correctedCompleteDocumentation now matches on-disk state
Cold power cycleCompleteFan-out stage cleared, 12 of 12 devices returned
Volume integrity verifiedCompleteAll datasets present and readable, no evidence of loss
Full volume inventory capturedComplete45,052 files, 13,622 directories, held off-device
Guest storage exposure auditedComplete7 nodes, no exposure
Service dependency map correctedCompleteFour consumers, one recovered from a false negative
Destination paths provisionedCompleteIsolated from managed share structure on two systems
Transport measured and selectedComplete2.2x throughput over the alternative
Multipath provisioned and verifiedCompleteDistinct hardware addresses confirmed from the source host
Stale interface configuration correctedCompleteSecond NAS-02 interface returned to the routed network
Protective copies startedRunningFour datasets, three destinations
Consumer A restoredCompleteVerified serving
Write-capable services quiescedDeliberateHeld pending copy completion

20. Pending actions

Section 20
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 18 of 19
Walter Infrastructure Open Questions and Assessment

21. Open questions

Section 21
QuestionBearing
What triggered the fan-out stage to hang after 32 days of nominal operation?Determines repair against replace. Firmware, transient power and thermal causes all remain open, ranked in Section 8.
Does a firmware revision exist addressing this behavior?Cheapest available mitigation. To be answered before the rebuild window.
Can device health telemetry be obtained on this platform by any method?Without it, array health is inferential. Affects whether this hardware remains suitable for this role.
Do the two remaining same-batch devices in NAS-03 warrant proactive replacement?Assessed against remaining service life and the array's redundancy position.
Should NAS-01 be replaced rather than rebuilt?Both paths are documented. The decision gate is recurrence, which the instrumentation above is designed to answer. The existing devices are healthy and portable to another chassis, so replacement cost is the enclosure rather than the storage.

22. Assessment

Section 22

Contained with no evidence of data loss, restored in thirty-two minutes, the failure mechanism identified to the subsystem. The affected hardware is operating within normal parameters and has logged no errors since recovery.

The platform is not yet proven and is being treated accordingly. Redundancy restoration is scheduled rather than assumed, recurrence instrumentation is specified, health telemetry is flagged as a gap rather than glossed, and the highest-value datasets are being copied off the array while the trigger question stays open. Two findings unrelated to the incident were surfaced by the response and are carried above with priorities.

Dave Walter
Walter Infrastructure · Principal Engineer
Report issued: 1 August 2026
Next update: on completion of protective copies
Sanitized example. Prepared from the incident record for the named environment. Identifiers generalized for distribution; the unredacted record is retained with the site documentation.
Walter Infrastructure · WI-2026-0731-01Sanitized Example · Page 19 of 19