aboutsummaryrefslogtreecommitdiff
path: root/go
diff options
context:
space:
mode:
authorchrislusf <chris.lu@gmail.com>2015-02-02 10:16:50 -0800
committerchrislusf <chris.lu@gmail.com>2015-02-02 10:16:50 -0800
commitcc724305b665bb13a592334cf4739c4498df9d72 (patch)
tree2c648533e945d238f2e4e681068c1e57807e917c /go
parent29a325626fc8b3671e4006ab7f15a13b99246f16 (diff)
downloadseaweedfs-cc724305b665bb13a592334cf4739c4498df9d72.tar.xz
seaweedfs-cc724305b665bb13a592334cf4739c4498df9d72.zip
Using Url instead of PublicUrl for volume server
Originally there are only url(ip + port), and publicUrl. Because ip was used to listen for http service, it has less flexibility and volume server has to be accessed via publicUrl. Recently we added ip.bind, for binding http service. With this change, url can be used to connect to volume servers. And publicUrl becomes a free style piece of url information, it does not even need to be unique.
Diffstat (limited to 'go')
-rw-r--r--go/operation/delete_content.go8
-rw-r--r--go/operation/lookup.go2
-rw-r--r--go/operation/submit.go2
-rw-r--r--go/weed/benchmark.go4
-rw-r--r--go/weed/weed_server/common.go2
-rw-r--r--go/weed/weed_server/filer_server_handlers.go4
-rw-r--r--go/weed/weed_server/master_server_handlers_admin.go2
-rw-r--r--go/weed/weed_server/volume_server_handlers.go2
8 files changed, 13 insertions, 13 deletions
diff --git a/go/operation/delete_content.go b/go/operation/delete_content.go
index 416a852b3..064cc8df9 100644
--- a/go/operation/delete_content.go
+++ b/go/operation/delete_content.go
@@ -66,11 +66,11 @@ func DeleteFiles(master string, fileIds []string) (*DeleteFilesResult, error) {
continue
}
for _, location := range result.Locations {
- if _, ok := server_to_fileIds[location.PublicUrl]; !ok {
- server_to_fileIds[location.PublicUrl] = make([]string, 0)
+ if _, ok := server_to_fileIds[location.Url]; !ok {
+ server_to_fileIds[location.Url] = make([]string, 0)
}
- server_to_fileIds[location.PublicUrl] = append(
- server_to_fileIds[location.PublicUrl], vid_to_fileIds[vid]...)
+ server_to_fileIds[location.Url] = append(
+ server_to_fileIds[location.Url], vid_to_fileIds[vid]...)
}
}
diff --git a/go/operation/lookup.go b/go/operation/lookup.go
index c05eb1d2b..8156c9779 100644
--- a/go/operation/lookup.go
+++ b/go/operation/lookup.go
@@ -72,7 +72,7 @@ func LookupFileId(server string, fileId string) (fullUrl string, err error) {
if len(lookup.Locations) == 0 {
return "", errors.New("File Not Found")
}
- return "http://" + lookup.Locations[rand.Intn(len(lookup.Locations))].PublicUrl + "/" + fileId, nil
+ return "http://" + lookup.Locations[rand.Intn(len(lookup.Locations))].Url + "/" + fileId, nil
}
// LookupVolumeIds find volume locations by cache and actual lookup
diff --git a/go/operation/submit.go b/go/operation/submit.go
index 62db46617..3ab6d78d9 100644
--- a/go/operation/submit.go
+++ b/go/operation/submit.go
@@ -137,7 +137,7 @@ func upload_one_chunk(filename string, reader io.Reader, master, replication str
if err != nil {
return "", 0, err
}
- fileUrl, fid := "http://"+ret.PublicUrl+"/"+ret.Fid, ret.Fid
+ fileUrl, fid := "http://"+ret.Url+"/"+ret.Fid, ret.Fid
glog.V(4).Info("Uploading part ", filename, " to ", fileUrl, "...")
uploadResult, uploadError := Upload(fileUrl, filename, reader, false, "application/octet-stream")
if uploadError != nil {
diff --git a/go/weed/benchmark.go b/go/weed/benchmark.go
index f4f0b1874..04ab4307d 100644
--- a/go/weed/benchmark.go
+++ b/go/weed/benchmark.go
@@ -203,7 +203,7 @@ func writeFiles(idChan chan int, fileIdLineChan chan string, s *stat) {
fileSize := int64(*b.fileSize + rand.Intn(64))
fp := &operation.FilePart{Reader: &FakeReader{id: uint64(id), size: fileSize}, FileSize: fileSize}
if assignResult, err := operation.Assign(*b.server, 1, "", *b.collection, ""); err == nil {
- fp.Server, fp.Fid, fp.Collection = assignResult.PublicUrl, assignResult.Fid, *b.collection
+ fp.Server, fp.Fid, fp.Collection = assignResult.Url, assignResult.Fid, *b.collection
if _, err := fp.Upload(0, *b.server); err == nil {
if rand.Intn(100) < *b.deletePercentage {
s.total++
@@ -251,7 +251,7 @@ func readFiles(fileIdLineChan chan string, s *stat) {
if _, now_ok := b.vid2server[vid]; !now_ok {
if ret, err := operation.Lookup(*b.server, vid); err == nil {
if len(ret.Locations) > 0 {
- server = ret.Locations[0].PublicUrl
+ server = ret.Locations[0].Url
b.vid2server[vid] = server
}
}
diff --git a/go/weed/weed_server/common.go b/go/weed/weed_server/common.go
index d259aa660..a2d93c246 100644
--- a/go/weed/weed_server/common.go
+++ b/go/weed/weed_server/common.go
@@ -96,7 +96,7 @@ func submitForClientHandler(w http.ResponseWriter, r *http.Request, masterUrl st
return
}
- url := "http://" + assignResult.PublicUrl + "/" + assignResult.Fid
+ url := "http://" + assignResult.Url + "/" + assignResult.Fid
if lastModified != 0 {
url = url + "?ts=" + strconv.FormatUint(lastModified, 10)
}
diff --git a/go/weed/weed_server/filer_server_handlers.go b/go/weed/weed_server/filer_server_handlers.go
index 0811b7973..ac894771a 100644
--- a/go/weed/weed_server/filer_server_handlers.go
+++ b/go/weed/weed_server/filer_server_handlers.go
@@ -80,7 +80,7 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request,
w.WriteHeader(http.StatusNotFound)
return
}
- urlLocation := lookup.Locations[rand.Intn(len(lookup.Locations))].PublicUrl
+ urlLocation := lookup.Locations[rand.Intn(len(lookup.Locations))].Url
urlString := "http://" + urlLocation + "/" + fileId
if fs.redirectOnRead {
http.Redirect(w, r, urlString, http.StatusFound)
@@ -126,7 +126,7 @@ func (fs *FilerServer) PostHandler(w http.ResponseWriter, r *http.Request) {
return
}
- u, _ := url.Parse("http://" + assignResult.PublicUrl + "/" + assignResult.Fid)
+ u, _ := url.Parse("http://" + assignResult.Url + "/" + assignResult.Fid)
glog.V(4).Infoln("post to", u)
request := &http.Request{
Method: r.Method,
diff --git a/go/weed/weed_server/master_server_handlers_admin.go b/go/weed/weed_server/master_server_handlers_admin.go
index 4d304efcb..33e45afd2 100644
--- a/go/weed/weed_server/master_server_handlers_admin.go
+++ b/go/weed/weed_server/master_server_handlers_admin.go
@@ -119,7 +119,7 @@ func (ms *MasterServer) redirectHandler(w http.ResponseWriter, r *http.Request)
}
machines := ms.Topo.Lookup("", volumeId)
if machines != nil && len(machines) > 0 {
- http.Redirect(w, r, "http://"+machines[0].PublicUrl+r.URL.Path, http.StatusMovedPermanently)
+ http.Redirect(w, r, "http://"+machines[0].Url()+r.URL.Path, http.StatusMovedPermanently)
} else {
writeJsonError(w, r, http.StatusNotFound, fmt.Errorf("volume id %d not found.", volumeId))
}
diff --git a/go/weed/weed_server/volume_server_handlers.go b/go/weed/weed_server/volume_server_handlers.go
index 6b47ee84d..c2c9e8523 100644
--- a/go/weed/weed_server/volume_server_handlers.go
+++ b/go/weed/weed_server/volume_server_handlers.go
@@ -61,7 +61,7 @@ func (vs *VolumeServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request)
lookupResult, err := operation.Lookup(vs.masterNode, volumeId.String())
glog.V(2).Infoln("volume", volumeId, "found on", lookupResult, "error", err)
if err == nil && len(lookupResult.Locations) > 0 {
- http.Redirect(w, r, "http://"+lookupResult.Locations[0].PublicUrl+r.URL.Path, http.StatusMovedPermanently)
+ http.Redirect(w, r, "http://"+lookupResult.Locations[0].Url+r.URL.Path, http.StatusMovedPermanently)
} else {
glog.V(2).Infoln("lookup error:", err, r.URL.Path)
w.WriteHeader(http.StatusNotFound)