aboutsummaryrefslogtreecommitdiff
path: root/weed/storage/disk_location_ec.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/storage/disk_location_ec.go')
-rw-r--r--weed/storage/disk_location_ec.go13
1 files changed, 11 insertions, 2 deletions
diff --git a/weed/storage/disk_location_ec.go b/weed/storage/disk_location_ec.go
index 8315fe363..6d681d2c2 100644
--- a/weed/storage/disk_location_ec.go
+++ b/weed/storage/disk_location_ec.go
@@ -2,13 +2,14 @@ package storage
import (
"fmt"
- "golang.org/x/exp/slices"
"os"
"path"
"regexp"
"strconv"
"strings"
+ "golang.org/x/exp/slices"
+
"github.com/seaweedfs/seaweedfs/weed/storage/erasure_coding"
"github.com/seaweedfs/seaweedfs/weed/storage/needle"
)
@@ -163,7 +164,15 @@ func (l *DiskLocation) loadAllEcShards() (err error) {
continue
}
- if re.MatchString(ext) {
+ info, err := fileInfo.Info()
+
+ if err != nil {
+ continue
+ }
+
+ // 0 byte files should be only appearing erroneously for ec data files
+ // so we ignore them
+ if re.MatchString(ext) && info.Size() > 0 {
if prevVolumeId == 0 || volumeId == prevVolumeId {
sameVolumeShards = append(sameVolumeShards, fileInfo.Name())
} else {