diff options
| author | Chris Lu <chris.lu@gmail.com> | 2017-07-03 22:35:28 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2017-07-03 22:35:28 -0700 |
| commit | f9a1769df10dfd3f33c569af9cb27db1628e5159 (patch) | |
| tree | a240a6a6c609752b486bdd06d156f2fc2a9c453a | |
| parent | 1fbb8723dc414dc9b84bbaf84224b6f5829d34de (diff) | |
| download | seaweedfs-f9a1769df10dfd3f33c569af9cb27db1628e5159.tar.xz seaweedfs-f9a1769df10dfd3f33c569af9cb27db1628e5159.zip | |
fix nil raft server caused crash
fix https://github.com/chrislusf/seaweedfs/issues/524
| -rw-r--r-- | weed/server/master_server_handlers_ui.go | 17 | ||||
| -rw-r--r-- | weed/server/master_ui/templates.go | 2 |
2 files changed, 10 insertions, 9 deletions
diff --git a/weed/server/master_server_handlers_ui.go b/weed/server/master_server_handlers_ui.go index 9ad234877..f241df87f 100644 --- a/weed/server/master_server_handlers_ui.go +++ b/weed/server/master_server_handlers_ui.go @@ -3,26 +3,25 @@ package weed_server import ( "net/http" + "github.com/chrislusf/raft" + ui "github.com/chrislusf/seaweedfs/weed/server/master_ui" "github.com/chrislusf/seaweedfs/weed/stats" "github.com/chrislusf/seaweedfs/weed/util" - ui "github.com/chrislusf/seaweedfs/weed/server/master_ui" ) func (ms *MasterServer) uiStatusHandler(w http.ResponseWriter, r *http.Request) { infos := make(map[string]interface{}) infos["Version"] = util.VERSION args := struct { - Version string - Topology interface{} - Leader string - Peers interface{} - Stats map[string]interface{} - Counters *stats.ServerStats + Version string + Topology interface{} + RaftServer raft.Server + Stats map[string]interface{} + Counters *stats.ServerStats }{ util.VERSION, ms.Topo.ToMap(), - ms.Topo.RaftServer.Leader(), - ms.Topo.RaftServer.Peers(), + ms.Topo.RaftServer, infos, serverStats, } diff --git a/weed/server/master_ui/templates.go b/weed/server/master_ui/templates.go index e9ee2d8d2..bfce617c5 100644 --- a/weed/server/master_ui/templates.go +++ b/weed/server/master_ui/templates.go @@ -33,6 +33,7 @@ var StatusTpl = template.Must(template.New("status").Parse(`<!DOCTYPE html> <th>Max</th> <td>{{ .Topology.Max }}</td> </tr> + {{ with .RaftServer }} <tr> <th>Leader</th> <td><a href="http://{{ .Leader }}">{{ .Leader }}</a></td> @@ -45,6 +46,7 @@ var StatusTpl = template.Must(template.New("status").Parse(`<!DOCTYPE html> {{ end }} </ul></td> </tr> + {{ end }} </tbody> </table> </div> |
