diff --git a/weed/server/master_grpc_server_assign.go b/weed/server/master_grpc_server_assign.go index 10908e5c6..4b35b696e 100644 --- a/weed/server/master_grpc_server_assign.go +++ b/weed/server/master_grpc_server_assign.go @@ -60,6 +60,7 @@ func (ms *MasterServer) Assign(ctx context.Context, req *master_pb.AssignRequest } diskType := types.ToDiskType(req.DiskType) + ver := needle.GetCurrentVersion() option := &topology.VolumeGrowOption{ Collection: req.Collection, ReplicaPlacement: replicaPlacement, @@ -70,7 +71,7 @@ func (ms *MasterServer) Assign(ctx context.Context, req *master_pb.AssignRequest Rack: req.Rack, DataNode: req.DataNode, MemoryMapMaxSizeMb: req.MemoryMapMaxSizeMb, - Version: uint32(needle.GetCurrentVersion()), + Version: uint32(ver), } if !ms.Topo.DataCenterExists(option.DataCenter) { diff --git a/weed/server/master_grpc_server_volume.go b/weed/server/master_grpc_server_volume.go index 0250856b1..553644f5f 100644 --- a/weed/server/master_grpc_server_volume.go +++ b/weed/server/master_grpc_server_volume.go @@ -333,6 +333,8 @@ func (ms *MasterServer) VolumeGrow(ctx context.Context, req *master_pb.VolumeGro if req.DataCenter != "" && !ms.Topo.DataCenterExists(req.DataCenter) { return nil, fmt.Errorf("data center not exists") } + + ver := needle.GetCurrentVersion() volumeGrowOption := topology.VolumeGrowOption{ Collection: req.Collection, ReplicaPlacement: replicaPlacement, @@ -343,7 +345,7 @@ func (ms *MasterServer) VolumeGrow(ctx context.Context, req *master_pb.VolumeGro Rack: req.Rack, DataNode: req.DataNode, MemoryMapMaxSizeMb: req.MemoryMapMaxSizeMb, - Version: uint32(needle.GetCurrentVersion()), + Version: uint32(ver), } volumeGrowRequest := topology.VolumeGrowRequest{ Option: &volumeGrowOption, diff --git a/weed/server/master_server_handlers_admin.go b/weed/server/master_server_handlers_admin.go index 0b1624a4d..b2f1aaf17 100644 --- a/weed/server/master_server_handlers_admin.go +++ b/weed/server/master_server_handlers_admin.go @@ -167,6 +167,7 @@ func (ms *MasterServer) getVolumeGrowOption(r *http.Request) (*topology.VolumeGr return nil, fmt.Errorf("Failed to parse int64 preallocate = %s: %v", r.FormValue("preallocate"), err) } } + ver := needle.GetCurrentVersion() volumeGrowOption := &topology.VolumeGrowOption{ Collection: r.FormValue("collection"), ReplicaPlacement: replicaPlacement, @@ -177,7 +178,7 @@ func (ms *MasterServer) getVolumeGrowOption(r *http.Request) (*topology.VolumeGr Rack: r.FormValue("rack"), DataNode: r.FormValue("dataNode"), MemoryMapMaxSizeMb: memoryMapMaxSizeMb, - Version: uint32(needle.GetCurrentVersion()), + Version: uint32(ver), } return volumeGrowOption, nil } diff --git a/weed/topology/volume_growth.go b/weed/topology/volume_growth.go index 8423ed5ca..c62fd72a0 100644 --- a/weed/topology/volume_growth.go +++ b/weed/topology/volume_growth.go @@ -264,7 +264,7 @@ func (vg *VolumeGrowth) grow(grpcDialOption grpc.DialOption, topo *Topology, vid Collection: option.Collection, ReplicaPlacement: option.ReplicaPlacement, Ttl: option.Ttl, - Version: needle.GetCurrentVersion(), + Version: needle.Version(option.Version), DiskType: option.DiskType.String(), ModifiedAtSecond: time.Now().Unix(), })