Browse Source

fix nil raft server caused crash

fix https://github.com/chrislusf/seaweedfs/issues/524
pull/533/head
Chris Lu 8 years ago
parent
commit
f9a1769df1
  1. 17
      weed/server/master_server_handlers_ui.go
  2. 2
      weed/server/master_ui/templates.go

17
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,
}

2
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>

Loading…
Cancel
Save