aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislusf <chris.lu@gmail.com>2015-04-19 07:05:54 -0700
committerchrislusf <chris.lu@gmail.com>2015-04-19 07:05:54 -0700
commitd47a6701c6d3e82b05b28df4afcb8cb47fc7d591 (patch)
tree41bffcbf3149b16808fedb9d280fd1792ef4a39d
parent6e876e058256938427b44847aa90f98c324bf3e4 (diff)
parent6f968626627916a41b299496fd758dd3c9e6c559 (diff)
downloadseaweedfs-d47a6701c6d3e82b05b28df4afcb8cb47fc7d591.tar.xz
seaweedfs-d47a6701c6d3e82b05b28df4afcb8cb47fc7d591.zip
Merge pull request #126 from yanyiwu/master
FIXED: When RaftServer cannot find a leader, Return a more readable erro...
-rw-r--r--go/weed/weed_server/master_server_handlers_admin.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/go/weed/weed_server/master_server_handlers_admin.go b/go/weed/weed_server/master_server_handlers_admin.go
index 0f836ff24..64c64d1e8 100644
--- a/go/weed/weed_server/master_server_handlers_admin.go
+++ b/go/weed/weed_server/master_server_handlers_admin.go
@@ -133,7 +133,12 @@ func (ms *MasterServer) submitFromMasterServerHandler(w http.ResponseWriter, r *
if ms.Topo.IsLeader() {
submitForClientHandler(w, r, "localhost:"+strconv.Itoa(ms.port))
} else {
- submitForClientHandler(w, r, ms.Topo.RaftServer.Leader())
+ masterUrl, err := ms.Topo.Leader()
+ if err != nil {
+ writeJsonError(w, r, http.StatusInternalServerError, err)
+ } else {
+ submitForClientHandler(w, r, masterUrl)
+ }
}
}