diff options
| author | chrislu <chris.lu@gmail.com> | 2021-12-22 16:05:43 -0800 |
|---|---|---|
| committer | chrislu <chris.lu@gmail.com> | 2021-12-22 16:05:43 -0800 |
| commit | 2bc6fa90ff8a1f3aef8318cb90712c3f23729f7f (patch) | |
| tree | baa3098898d9600c0632fd8e5d1a056a712c71a2 /weed/server/filer_server_handlers_write.go | |
| parent | 0ec7bc6710350dec395b33ba44589ee1875586c0 (diff) | |
| parent | 4e73705533c1a8510cd6b3308af37fc851803ed3 (diff) | |
| download | seaweedfs-2bc6fa90ff8a1f3aef8318cb90712c3f23729f7f.tar.xz seaweedfs-2bc6fa90ff8a1f3aef8318cb90712c3f23729f7f.zip | |
Merge branch 'master' of https://github.com/chrislusf/seaweedfs
Diffstat (limited to 'weed/server/filer_server_handlers_write.go')
| -rw-r--r-- | weed/server/filer_server_handlers_write.go | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/weed/server/filer_server_handlers_write.go b/weed/server/filer_server_handlers_write.go index 39d983ab7..46b0302aa 100644 --- a/weed/server/filer_server_handlers_write.go +++ b/weed/server/filer_server_handlers_write.go @@ -65,6 +65,7 @@ func (fs *FilerServer) PostHandler(w http.ResponseWriter, r *http.Request, conte query.Get("disk"), query.Get("dataCenter"), query.Get("rack"), + query.Get("dataNode"), ) if err != nil { if err == ErrReadOnly { @@ -115,7 +116,7 @@ func (fs *FilerServer) DeleteHandler(w http.ResponseWriter, r *http.Request) { w.WriteHeader(http.StatusNoContent) } -func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication string, ttlSeconds int32, diskType, dataCenter, rack string) (*operation.StorageOption, error) { +func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication string, ttlSeconds int32, diskType, dataCenter, rack, dataNode string) (*operation.StorageOption, error) { rule := fs.filer.FilerConf.MatchStorageRule(requestURI) @@ -143,6 +144,7 @@ func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication Collection: util.Nvl(qCollection, rule.Collection, bucketDefaultCollection, fs.option.Collection), DataCenter: util.Nvl(dataCenter, fs.option.DataCenter), Rack: util.Nvl(rack, fs.option.Rack), + DataNode: util.Nvl(dataNode, fs.option.DataNode), TtlSeconds: ttlSeconds, DiskType: util.Nvl(diskType, rule.DiskType), Fsync: fsync || rule.Fsync, @@ -150,12 +152,12 @@ func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication }, nil } -func (fs *FilerServer) detectStorageOption0(requestURI, qCollection, qReplication string, qTtl string, diskType string, dataCenter, rack string) (*operation.StorageOption, error) { +func (fs *FilerServer) detectStorageOption0(requestURI, qCollection, qReplication string, qTtl string, diskType string, dataCenter, rack, dataNode string) (*operation.StorageOption, error) { ttl, err := needle.ReadTTL(qTtl) if err != nil { glog.Errorf("fail to parse ttl %s: %v", qTtl, err) } - return fs.detectStorageOption(requestURI, qCollection, qReplication, int32(ttl.Minutes())*60, diskType, dataCenter, rack) + return fs.detectStorageOption(requestURI, qCollection, qReplication, int32(ttl.Minutes())*60, diskType, dataCenter, rack, dataNode) } |
