diff options
| -rw-r--r-- | weed/storage/disk_location_ec.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/weed/storage/disk_location_ec.go b/weed/storage/disk_location_ec.go index 8ba4339ce..452ae114c 100644 --- a/weed/storage/disk_location_ec.go +++ b/weed/storage/disk_location_ec.go @@ -359,7 +359,10 @@ func (l *DiskLocation) validateEcVolume(collection string, vid needle.VolumeId) datExists = true expectedShardSize = calculateExpectedShardSize(datFileInfo.Size()) } else if !os.IsNotExist(err) { + // If stat fails with unexpected error (permission, I/O), fail validation + // Don't treat this as "distributed EC" - it could be a temporary error glog.Warningf("Failed to stat .dat file %s: %v", datFileName, err) + return false } shardCount := 0 |
