diff options
| author | Chris Lu <chris.lu@gmail.com> | 2021-05-19 10:02:01 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2021-05-19 10:02:01 -0700 |
| commit | 87a32bfef4f9b4c3594d20dac22d0e8cf60db341 (patch) | |
| tree | e54f44102a342d579ab8003fc4de175b1a886439 /weed/topology/data_node.go | |
| parent | 6c1c72b1f4168f5b91392d23ec8956ee95100d98 (diff) | |
| download | seaweedfs-87a32bfef4f9b4c3594d20dac22d0e8cf60db341.tar.xz seaweedfs-87a32bfef4f9b4c3594d20dac22d0e8cf60db341.zip | |
avoid possible nil when node is disconnected from its parent
fix https://github.com/chrislusf/seaweedfs/issues/2073
Diffstat (limited to 'weed/topology/data_node.go')
| -rw-r--r-- | weed/topology/data_node.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/weed/topology/data_node.go b/weed/topology/data_node.go index 69f739dd5..2813f7b45 100644 --- a/weed/topology/data_node.go +++ b/weed/topology/data_node.go @@ -177,7 +177,13 @@ func (dn *DataNode) GetVolumesById(id needle.VolumeId) (vInfo storage.VolumeInfo func (dn *DataNode) GetDataCenter() *DataCenter { rack := dn.Parent() + if rack == nil { + return nil + } dcNode := rack.Parent() + if dcNode == nil { + return nil + } dcValue := dcNode.GetValue() return dcValue.(*DataCenter) } |
