aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/command/mount_std.go6
-rw-r--r--weed/command/volume.go6
-rw-r--r--weed/server/master_grpc_server_volume.go5
-rw-r--r--weed/server/master_server_handlers_admin.go5
-rw-r--r--weed/storage/volume_disk_type.go (renamed from weed/storage/volume_type.go)9
-rw-r--r--weed/topology/topology.go6
-rw-r--r--weed/topology/topology_event_handling.go4
7 files changed, 15 insertions, 26 deletions
diff --git a/weed/command/mount_std.go b/weed/command/mount_std.go
index e2aa7e7d4..56338e327 100644
--- a/weed/command/mount_std.go
+++ b/weed/command/mount_std.go
@@ -169,11 +169,7 @@ func RunMount(option *MountOptions, umask os.FileMode) bool {
mountRoot = mountRoot[0 : len(mountRoot)-1]
}
- diskType, err := storage.ToDiskType(*option.diskType)
- if err != nil {
- fmt.Printf("failed to parse volume type: %v\n", err)
- return false
- }
+ diskType := storage.ToDiskType(*option.diskType)
seaweedFileSystem := filesys.NewSeaweedFileSystem(&filesys.Option{
MountDirectory: dir,
diff --git a/weed/command/volume.go b/weed/command/volume.go
index fa7dcaa06..9fadcf7df 100644
--- a/weed/command/volume.go
+++ b/weed/command/volume.go
@@ -173,11 +173,7 @@ func (v VolumeServerOptions) startVolumeServer(volumeFolders, maxVolumeCounts, v
var diskTypes []storage.DiskType
diskTypeStrings := strings.Split(*v.diskType, ",")
for _, diskTypeString := range diskTypeStrings {
- if diskType, err := storage.ToDiskType(diskTypeString); err == nil {
- diskTypes = append(diskTypes, diskType)
- } else {
- glog.Fatalf("failed to parse volume type: %v", err)
- }
+ diskTypes = append(diskTypes, storage.ToDiskType(diskTypeString))
}
if len(diskTypes) == 1 && len(v.folders) > 1 {
for i := 0; i < len(v.folders)-1; i++ {
diff --git a/weed/server/master_grpc_server_volume.go b/weed/server/master_grpc_server_volume.go
index f1d65896a..deac3027c 100644
--- a/weed/server/master_grpc_server_volume.go
+++ b/weed/server/master_grpc_server_volume.go
@@ -61,10 +61,7 @@ func (ms *MasterServer) Assign(ctx context.Context, req *master_pb.AssignRequest
if err != nil {
return nil, err
}
- diskType, err := storage.ToDiskType(req.DiskType)
- if err != nil {
- return nil, err
- }
+ diskType := storage.ToDiskType(req.DiskType)
option := &topology.VolumeGrowOption{
Collection: req.Collection,
diff --git a/weed/server/master_server_handlers_admin.go b/weed/server/master_server_handlers_admin.go
index 7b1ec1f87..28737324c 100644
--- a/weed/server/master_server_handlers_admin.go
+++ b/weed/server/master_server_handlers_admin.go
@@ -158,10 +158,7 @@ func (ms *MasterServer) getVolumeGrowOption(r *http.Request) (*topology.VolumeGr
if err != nil {
return nil, err
}
- diskType, err := storage.ToDiskType(r.FormValue("disk"))
- if err != nil {
- return nil, err
- }
+ diskType := storage.ToDiskType(r.FormValue("disk"))
preallocate := ms.preallocateSize
if r.FormValue("preallocate") != "" {
diff --git a/weed/storage/volume_type.go b/weed/storage/volume_disk_type.go
index 3e8d5ffb5..e97002120 100644
--- a/weed/storage/volume_type.go
+++ b/weed/storage/volume_disk_type.go
@@ -1,6 +1,8 @@
package storage
-import "fmt"
+import (
+ "strings"
+)
type DiskType string
@@ -9,7 +11,8 @@ const (
SsdType = "ssd"
)
-func ToDiskType(vt string) (diskType DiskType, err error) {
+func ToDiskType(vt string) (diskType DiskType) {
+ vt = strings.ToLower(vt)
diskType = HardDriveType
switch vt {
case "", "hdd":
@@ -17,7 +20,7 @@ func ToDiskType(vt string) (diskType DiskType, err error) {
case "ssd":
diskType = SsdType
default:
- err = fmt.Errorf("parse DiskType %s: expecting hdd or ssd\n", vt)
+ diskType = DiskType(vt)
}
return
}
diff --git a/weed/topology/topology.go b/weed/topology/topology.go
index 486394f7a..220be4e88 100644
--- a/weed/topology/topology.go
+++ b/weed/topology/topology.go
@@ -188,14 +188,14 @@ func (t *Topology) DeleteLayout(collectionName string, rp *super_block.ReplicaPl
}
func (t *Topology) RegisterVolumeLayout(v storage.VolumeInfo, dn *DataNode) {
- diskType, _ := storage.ToDiskType(v.DiskType)
+ diskType := storage.ToDiskType(v.DiskType)
vl := t.GetVolumeLayout(v.Collection, v.ReplicaPlacement, v.Ttl, diskType)
vl.RegisterVolume(&v, dn)
vl.EnsureCorrectWritables(&v)
}
func (t *Topology) UnRegisterVolumeLayout(v storage.VolumeInfo, dn *DataNode) {
glog.Infof("removing volume info: %+v", v)
- diskType, _ := storage.ToDiskType(v.DiskType)
+ diskType := storage.ToDiskType(v.DiskType)
volumeLayout := t.GetVolumeLayout(v.Collection, v.ReplicaPlacement, v.Ttl, diskType)
volumeLayout.UnRegisterVolume(&v, dn)
if volumeLayout.isEmpty() {
@@ -235,7 +235,7 @@ func (t *Topology) SyncDataNodeRegistration(volumes []*master_pb.VolumeInformati
t.UnRegisterVolumeLayout(v, dn)
}
for _, v := range changedVolumes {
- diskType, _ := storage.ToDiskType(v.DiskType)
+ diskType := storage.ToDiskType(v.DiskType)
vl := t.GetVolumeLayout(v.Collection, v.ReplicaPlacement, v.Ttl, diskType)
vl.EnsureCorrectWritables(&v)
}
diff --git a/weed/topology/topology_event_handling.go b/weed/topology/topology_event_handling.go
index 5b9facc14..d4076af5d 100644
--- a/weed/topology/topology_event_handling.go
+++ b/weed/topology/topology_event_handling.go
@@ -37,7 +37,7 @@ func (t *Topology) StartRefreshWritableVolumes(grpcDialOption grpc.DialOption, g
}()
}
func (t *Topology) SetVolumeCapacityFull(volumeInfo storage.VolumeInfo) bool {
- diskType, _ := storage.ToDiskType(volumeInfo.DiskType)
+ diskType := storage.ToDiskType(volumeInfo.DiskType)
vl := t.GetVolumeLayout(volumeInfo.Collection, volumeInfo.ReplicaPlacement, volumeInfo.Ttl, diskType)
if !vl.SetVolumeCapacityFull(volumeInfo.Id) {
return false
@@ -56,7 +56,7 @@ func (t *Topology) SetVolumeCapacityFull(volumeInfo storage.VolumeInfo) bool {
func (t *Topology) UnRegisterDataNode(dn *DataNode) {
for _, v := range dn.GetVolumes() {
glog.V(0).Infoln("Removing Volume", v.Id, "from the dead volume server", dn.Id())
- diskType, _ := storage.ToDiskType(v.DiskType)
+ diskType := storage.ToDiskType(v.DiskType)
vl := t.GetVolumeLayout(v.Collection, v.ReplicaPlacement, v.Ttl, diskType)
vl.SetVolumeUnavailable(dn, v.Id)
}