mirror of
https://github.com/pgsty/minio.git
synced 2026-07-19 12:10:24 +03:00
Add disksUnavailable healStatus const (#3990)
`disksUnavailable` healStatus constant indicates that a given object needs healing but one or more of disks requiring heal are offline. This can be used by admin heal API consumers to distinguish between a successful heal and a no-op since the outdated disks were offline.
This commit is contained in:
committed by
Harshavardhana
parent
a2a8d54bb6
commit
2bd694dbc8
@@ -41,17 +41,17 @@ func main() {
|
||||
|
||||
// Heal object mybucket/myobject - dry run.
|
||||
isDryRun := true
|
||||
err = madmClnt.HealObject("mybucket", "myobject", isDryRun)
|
||||
_, err = madmClnt.HealObject("mybucket", "myobject", isDryRun)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
// Heal object mybucket/myobject - this time for real.
|
||||
isDryRun = false
|
||||
err = madmClnt.HealObject("mybucket", "myobject", isDryRun)
|
||||
healResult, err := madmClnt.HealObject("mybucket", "myobject", isDryRun)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
log.Println("successfully healed mybucket/myobject")
|
||||
log.Printf("heal result: %#v\n", healResult)
|
||||
}
|
||||
|
||||
@@ -65,6 +65,8 @@ func main() {
|
||||
switch healInfo := *object.HealObjectInfo; healInfo.Status {
|
||||
case madmin.CanHeal:
|
||||
fmt.Println(object.Key, " can be healed.")
|
||||
case madmin.CanPartiallyHeal:
|
||||
fmt.Println(object.Key, " can't be healed completely, some disks are offline.")
|
||||
case madmin.QuorumUnavailable:
|
||||
fmt.Println(object.Key, " can't be healed until quorum is available.")
|
||||
case madmin.Corrupted:
|
||||
|
||||
@@ -41,17 +41,17 @@ func main() {
|
||||
|
||||
// Heal upload mybucket/myobject/uploadID - dry run.
|
||||
isDryRun := true
|
||||
err = madmClnt.HealUpload("mybucket", "myobject", "myuploadID", isDryRun)
|
||||
_, err = madmClnt.HealUpload("mybucket", "myobject", "myUploadID", isDryRun)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
// Heal upload mybucket/myobject/uploadID - this time for real.
|
||||
isDryRun = false
|
||||
err = madmClnt.HealUpload("mybucket", "myobject", "myuploadID", isDryRun)
|
||||
healResult, err := madmClnt.HealUpload("mybucket", "myobject", "myUploadID", isDryRun)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
log.Println("successfully healed mybucket/myobject/myuploadID")
|
||||
log.Printf("Heal result for mybucket/myobject/myUploadID: %#v\n", healResult)
|
||||
}
|
||||
|
||||
@@ -64,6 +64,8 @@ func main() {
|
||||
switch healInfo := *upload.HealUploadInfo; healInfo.Status {
|
||||
case madmin.CanHeal:
|
||||
fmt.Println(upload.Key, " can be healed.")
|
||||
case madmin.CanPartiallyHeal:
|
||||
fmt.Println(upload.Key, " can be healed partially. Some disks may be offline.")
|
||||
case madmin.QuorumUnavailable:
|
||||
fmt.Println(upload.Key, " can't be healed until quorum is available.")
|
||||
case madmin.Corrupted:
|
||||
|
||||
Reference in New Issue
Block a user