mirror of
https://github.com/minio/minio.git
synced 2025-12-02 22:20:43 -05:00
Wire up sha512 matching inside donut along with md5sum
This commit is contained in:
@@ -1,25 +1,32 @@
|
||||
package donut
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
import "github.com/minio/minio/pkg/iodine"
|
||||
|
||||
"github.com/minio/minio/pkg/iodine"
|
||||
)
|
||||
type missingDisk struct {
|
||||
nodeNumber int
|
||||
sliceNumber int
|
||||
bucketName string
|
||||
}
|
||||
|
||||
// Heal heal an existing donut
|
||||
func (donut API) Heal() error {
|
||||
missingDisks := make(map[int]struct{})
|
||||
var missingDisks []missingDisk
|
||||
nodeNumber := 0
|
||||
for _, node := range donut.nodes {
|
||||
disks, err := node.ListDisks()
|
||||
if err != nil {
|
||||
return iodine.New(err, nil)
|
||||
}
|
||||
for i, disk := range disks {
|
||||
dirs, err := disk.ListDir(donut.config.DonutName)
|
||||
if err != nil {
|
||||
missingDisks[i] = struct{}{}
|
||||
_, err := disk.ListDir(donut.config.DonutName)
|
||||
if err == nil {
|
||||
continue
|
||||
}
|
||||
fmt.Println(dirs)
|
||||
missingDisk := missingDisk{
|
||||
nodeNumber: nodeNumber,
|
||||
sliceNumber: i,
|
||||
}
|
||||
missingDisks = append(missingDisks, missingDisk)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
|
||||
Reference in New Issue
Block a user