mirror of https://github.com/milvus-io/milvus.git
Use the server id as identifier in system topology graph (#9825)
Signed-off-by: dragondriver <jiquan.long@zilliz.com>pull/9863/head
parent
937e59f6c3
commit
72d3d470ba
|
@ -16,6 +16,8 @@ import (
|
|||
"errors"
|
||||
"os"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/uniquegenerator"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/typeutil"
|
||||
|
||||
"go.uber.org/zap"
|
||||
|
@ -102,6 +104,7 @@ func (s *Server) getDataCoordMetrics() metricsinfo.DataCoordInfos {
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.DataCoordRole,
|
||||
ID: s.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.DataCoordConfiguration{
|
||||
SegmentMaxSize: Params.SegmentMaxSize,
|
||||
|
@ -115,6 +118,7 @@ func (s *Server) getDataNodeMetrics(ctx context.Context, req *milvuspb.GetMetric
|
|||
infos := metricsinfo.DataNodeInfos{
|
||||
BaseComponentInfos: metricsinfo.BaseComponentInfos{
|
||||
HasError: true,
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
}
|
||||
if node == nil {
|
||||
|
|
|
@ -162,6 +162,7 @@ func (c *mockDataNodeClient) GetMetrics(ctx context.Context, req *milvuspb.GetMe
|
|||
nodeInfos := metricsinfo.DataNodeInfos{
|
||||
BaseComponentInfos: metricsinfo.BaseComponentInfos{
|
||||
Name: metricsinfo.ConstructComponentName(typeutil.DataNodeRole, nodeID),
|
||||
ID: nodeID,
|
||||
},
|
||||
}
|
||||
resp, err := metricsinfo.MarshalComponentInfos(nodeInfos)
|
||||
|
@ -401,6 +402,7 @@ func (m *mockRootCoordService) GetMetrics(ctx context.Context, req *milvuspb.Get
|
|||
Self: metricsinfo.RootCoordInfos{
|
||||
BaseComponentInfos: metricsinfo.BaseComponentInfos{
|
||||
Name: metricsinfo.ConstructComponentName(typeutil.RootCoordRole, nodeID),
|
||||
ID: nodeID,
|
||||
},
|
||||
},
|
||||
Connections: metricsinfo.ConnTopology{
|
||||
|
|
|
@ -42,6 +42,7 @@ func (node *DataNode) getSystemInfoMetrics(ctx context.Context, req *milvuspb.Ge
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.DataNodeRole,
|
||||
ID: node.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.DataNodeConfiguration{
|
||||
FlushInsertBufferSize: Params.FlushInsertBufferSize,
|
||||
|
|
|
@ -15,6 +15,8 @@ import (
|
|||
"context"
|
||||
"os"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/uniquegenerator"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/typeutil"
|
||||
|
||||
"go.uber.org/zap"
|
||||
|
@ -53,6 +55,7 @@ func getSystemInfoMetrics(
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.IndexCoordRole,
|
||||
ID: coord.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.IndexCoordConfiguration{
|
||||
MinioBucketName: Params.MinioBucketName,
|
||||
|
@ -72,6 +75,7 @@ func getSystemInfoMetrics(
|
|||
ErrorReason: nodeMetrics.err.Error(),
|
||||
// Name doesn't matter here cause we can't get it when error occurs, using address as the Name?
|
||||
Name: "",
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
})
|
||||
continue
|
||||
|
@ -86,6 +90,7 @@ func getSystemInfoMetrics(
|
|||
HasError: true,
|
||||
ErrorReason: nodeMetrics.resp.Status.Reason,
|
||||
Name: nodeMetrics.resp.ComponentName,
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
})
|
||||
continue
|
||||
|
@ -101,6 +106,7 @@ func getSystemInfoMetrics(
|
|||
HasError: true,
|
||||
ErrorReason: err.Error(),
|
||||
Name: nodeMetrics.resp.ComponentName,
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
})
|
||||
continue
|
||||
|
|
|
@ -48,6 +48,7 @@ func getSystemInfoMetrics(
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.IndexNodeRole,
|
||||
ID: node.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.IndexNodeConfiguration{
|
||||
MinioBucketName: Params.MinioBucketName,
|
||||
|
|
|
@ -15,8 +15,6 @@ import (
|
|||
"context"
|
||||
"os"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/uniquegenerator"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/proto/commonpb"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/typeutil"
|
||||
|
@ -43,9 +41,9 @@ func getSystemInfoMetrics(
|
|||
identifierMap := make(map[string]int)
|
||||
|
||||
proxyRoleName := metricsinfo.ConstructComponentName(typeutil.ProxyRole, Params.ProxyID)
|
||||
identifierMap[proxyRoleName] = uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
identifierMap[proxyRoleName] = int(node.session.ServerID)
|
||||
proxyTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[proxyRoleName],
|
||||
Identifier: int(node.session.ServerID),
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &metricsinfo.ProxyInfos{
|
||||
BaseComponentInfos: metricsinfo.BaseComponentInfos{
|
||||
|
@ -68,6 +66,7 @@ func getSystemInfoMetrics(
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.ProxyRole,
|
||||
ID: node.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.ProxyConfiguration{
|
||||
DefaultPartitionName: Params.DefaultPartitionName,
|
||||
|
@ -78,30 +77,38 @@ func getSystemInfoMetrics(
|
|||
|
||||
queryCoordResp, queryCoordErr := node.queryCoord.GetMetrics(ctx, request)
|
||||
queryCoordRoleName := ""
|
||||
var queryCoordTopology metricsinfo.QueryCoordTopology
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
queryCoordRoleName = queryCoordResp.ComponentName
|
||||
identifierMap[queryCoordRoleName] = uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
queryCoordErr = metricsinfo.UnmarshalTopology(queryCoordResp.Response, &queryCoordTopology)
|
||||
identifierMap[queryCoordRoleName] = int(queryCoordTopology.Cluster.Self.ID)
|
||||
}
|
||||
|
||||
dataCoordResp, dataCoordErr := node.dataCoord.GetMetrics(ctx, request)
|
||||
dataCoordRoleName := ""
|
||||
var dataCoordTopology metricsinfo.DataCoordTopology
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
dataCoordRoleName = dataCoordResp.ComponentName
|
||||
identifierMap[dataCoordRoleName] = uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
dataCoordErr = metricsinfo.UnmarshalTopology(dataCoordResp.Response, &dataCoordTopology)
|
||||
identifierMap[dataCoordRoleName] = int(dataCoordTopology.Cluster.Self.ID)
|
||||
}
|
||||
|
||||
indexCoordResp, indexCoordErr := node.indexCoord.GetMetrics(ctx, request)
|
||||
indexCoordRoleName := ""
|
||||
var indexCoordTopology metricsinfo.IndexCoordTopology
|
||||
if indexCoordErr == nil && indexCoordResp != nil {
|
||||
indexCoordRoleName = indexCoordResp.ComponentName
|
||||
identifierMap[indexCoordRoleName] = uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
indexCoordErr = metricsinfo.UnmarshalTopology(indexCoordResp.Response, &indexCoordTopology)
|
||||
identifierMap[indexCoordRoleName] = int(indexCoordTopology.Cluster.Self.ID)
|
||||
}
|
||||
|
||||
rootCoordResp, rootCoordErr := node.rootCoord.GetMetrics(ctx, request)
|
||||
rootCoordRoleName := ""
|
||||
var rootCoordTopology metricsinfo.RootCoordTopology
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
rootCoordRoleName = rootCoordResp.ComponentName
|
||||
identifierMap[rootCoordRoleName] = uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
rootCoordErr = metricsinfo.UnmarshalTopology(rootCoordResp.Response, &rootCoordTopology)
|
||||
identifierMap[rootCoordRoleName] = int(rootCoordTopology.Self.ID)
|
||||
}
|
||||
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
|
@ -111,73 +118,69 @@ func getSystemInfoMetrics(
|
|||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
|
||||
queryCoordTopology := metricsinfo.QueryCoordTopology{}
|
||||
err = metricsinfo.UnmarshalTopology(queryCoordResp.Response, &queryCoordTopology)
|
||||
if err == nil {
|
||||
// query coord in system topology graph
|
||||
queryCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[queryCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &queryCoordTopology.Cluster.Self,
|
||||
}
|
||||
// query coord in system topology graph
|
||||
queryCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[queryCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &queryCoordTopology.Cluster.Self,
|
||||
}
|
||||
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range queryCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.DataCoordRole:
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.IndexCoordRole:
|
||||
if indexCoordErr == nil && indexCoordResp != nil {
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.QueryCoordRole:
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range queryCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// add query nodes to system topology graph
|
||||
for _, queryNode := range queryCoordTopology.Cluster.ConnectedNodes {
|
||||
node := queryNode
|
||||
identifier := uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
identifierMap[queryNode.Name] = identifier
|
||||
queryNodeTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifier,
|
||||
Connected: nil,
|
||||
Infos: &node,
|
||||
case typeutil.DataCoordRole:
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
}
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, queryNodeTopologyNode)
|
||||
case typeutil.IndexCoordRole:
|
||||
if indexCoordErr == nil && indexCoordResp != nil {
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.QueryCoordRole:
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifier,
|
||||
Type: metricsinfo.CoordConnectToNode,
|
||||
TargetType: typeutil.QueryNodeRole,
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
}
|
||||
|
||||
// add query coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, queryCoordTopologyNode)
|
||||
}
|
||||
|
||||
// add query nodes to system topology graph
|
||||
for _, queryNode := range queryCoordTopology.Cluster.ConnectedNodes {
|
||||
node := queryNode
|
||||
identifier := int(node.ID)
|
||||
identifierMap[queryNode.Name] = identifier
|
||||
queryNodeTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifier,
|
||||
Connected: nil,
|
||||
Infos: &node,
|
||||
}
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, queryNodeTopologyNode)
|
||||
queryCoordTopologyNode.Connected = append(queryCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifier,
|
||||
Type: metricsinfo.CoordConnectToNode,
|
||||
TargetType: typeutil.QueryNodeRole,
|
||||
})
|
||||
}
|
||||
|
||||
// add query coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, queryCoordTopologyNode)
|
||||
}
|
||||
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
|
@ -187,73 +190,69 @@ func getSystemInfoMetrics(
|
|||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
|
||||
dataCoordTopology := metricsinfo.DataCoordTopology{}
|
||||
err = metricsinfo.UnmarshalTopology(dataCoordResp.Response, &dataCoordTopology)
|
||||
if err == nil {
|
||||
// data coord in system topology graph
|
||||
dataCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[dataCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &dataCoordTopology.Cluster.Self,
|
||||
}
|
||||
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range dataCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.DataCoordRole:
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
case typeutil.IndexCoordRole:
|
||||
if indexCoordErr == nil && indexCoordResp != nil {
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.QueryCoordRole:
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// add data nodes to system topology graph
|
||||
for _, dataNode := range dataCoordTopology.Cluster.ConnectedNodes {
|
||||
node := dataNode
|
||||
identifier := uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
identifierMap[dataNode.Name] = identifier
|
||||
dataNodeTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifier,
|
||||
Connected: nil,
|
||||
Infos: &node,
|
||||
}
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, dataNodeTopologyNode)
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifier,
|
||||
Type: metricsinfo.CoordConnectToNode,
|
||||
TargetType: typeutil.DataNodeRole,
|
||||
})
|
||||
}
|
||||
|
||||
// add data coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, dataCoordTopologyNode)
|
||||
// data coord in system topology graph
|
||||
dataCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[dataCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &dataCoordTopology.Cluster.Self,
|
||||
}
|
||||
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range dataCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.DataCoordRole:
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
case typeutil.IndexCoordRole:
|
||||
if indexCoordErr == nil && indexCoordResp != nil {
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.QueryCoordRole:
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// add data nodes to system topology graph
|
||||
for _, dataNode := range dataCoordTopology.Cluster.ConnectedNodes {
|
||||
node := dataNode
|
||||
identifier := int(node.ID)
|
||||
identifierMap[dataNode.Name] = identifier
|
||||
dataNodeTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifier,
|
||||
Connected: nil,
|
||||
Infos: &node,
|
||||
}
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, dataNodeTopologyNode)
|
||||
dataCoordTopologyNode.Connected = append(dataCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifier,
|
||||
Type: metricsinfo.CoordConnectToNode,
|
||||
TargetType: typeutil.DataNodeRole,
|
||||
})
|
||||
}
|
||||
|
||||
// add data coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, dataCoordTopologyNode)
|
||||
}
|
||||
|
||||
if indexCoordErr == nil && indexCoordResp != nil {
|
||||
|
@ -263,73 +262,69 @@ func getSystemInfoMetrics(
|
|||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
|
||||
indexCoordTopology := metricsinfo.IndexCoordTopology{}
|
||||
err = metricsinfo.UnmarshalTopology(indexCoordResp.Response, &indexCoordTopology)
|
||||
if err == nil {
|
||||
// index coord in system topology graph
|
||||
indexCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[indexCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &indexCoordTopology.Cluster.Self,
|
||||
}
|
||||
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range indexCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.DataCoordRole:
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.IndexCoordRole:
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
case typeutil.QueryCoordRole:
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// add index nodes to system topology graph
|
||||
for _, indexNode := range indexCoordTopology.Cluster.ConnectedNodes {
|
||||
node := indexNode
|
||||
identifier := uniquegenerator.GetUniqueIntGeneratorIns().GetInt()
|
||||
identifierMap[indexNode.Name] = identifier
|
||||
indexNodeTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifier,
|
||||
Connected: nil,
|
||||
Infos: &node,
|
||||
}
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, indexNodeTopologyNode)
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifier,
|
||||
Type: metricsinfo.CoordConnectToNode,
|
||||
TargetType: typeutil.IndexNodeRole,
|
||||
})
|
||||
}
|
||||
|
||||
// add index coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, indexCoordTopologyNode)
|
||||
// index coord in system topology graph
|
||||
indexCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[indexCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &indexCoordTopology.Cluster.Self,
|
||||
}
|
||||
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range indexCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.DataCoordRole:
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.IndexCoordRole:
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
case typeutil.QueryCoordRole:
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// add index nodes to system topology graph
|
||||
for _, indexNode := range indexCoordTopology.Cluster.ConnectedNodes {
|
||||
node := indexNode
|
||||
identifier := int(node.ID)
|
||||
identifierMap[indexNode.Name] = identifier
|
||||
indexNodeTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifier,
|
||||
Connected: nil,
|
||||
Infos: &node,
|
||||
}
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, indexNodeTopologyNode)
|
||||
indexCoordTopologyNode.Connected = append(indexCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifier,
|
||||
Type: metricsinfo.CoordConnectToNode,
|
||||
TargetType: typeutil.IndexNodeRole,
|
||||
})
|
||||
}
|
||||
|
||||
// add index coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, indexCoordTopologyNode)
|
||||
}
|
||||
|
||||
if rootCoordErr == nil && rootCoordResp != nil {
|
||||
|
@ -339,53 +334,49 @@ func getSystemInfoMetrics(
|
|||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
|
||||
rootCoordTopology := metricsinfo.RootCoordTopology{}
|
||||
err = metricsinfo.UnmarshalTopology(rootCoordResp.Response, &rootCoordTopology)
|
||||
if err == nil {
|
||||
// root coord in system topology graph
|
||||
rootCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[rootCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &rootCoordTopology.Self,
|
||||
}
|
||||
// root coord in system topology graph
|
||||
rootCoordTopologyNode := metricsinfo.SystemTopologyNode{
|
||||
Identifier: identifierMap[rootCoordRoleName],
|
||||
Connected: make([]metricsinfo.ConnectionEdge, 0),
|
||||
Infos: &rootCoordTopology.Self,
|
||||
}
|
||||
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range rootCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
// fill connection edge, a little trick here
|
||||
for _, edge := range rootCoordTopology.Connections.ConnectedComponents {
|
||||
switch edge.TargetType {
|
||||
case typeutil.RootCoordRole:
|
||||
rootCoordTopologyNode.Connected = append(rootCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
})
|
||||
case typeutil.DataCoordRole:
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
rootCoordTopologyNode.Connected = append(rootCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[rootCoordRoleName],
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.RootCoordRole,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
case typeutil.DataCoordRole:
|
||||
if dataCoordErr == nil && dataCoordResp != nil {
|
||||
rootCoordTopologyNode.Connected = append(rootCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[dataCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.DataCoordRole,
|
||||
})
|
||||
}
|
||||
case typeutil.IndexCoordRole:
|
||||
}
|
||||
case typeutil.IndexCoordRole:
|
||||
rootCoordTopologyNode.Connected = append(rootCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
})
|
||||
case typeutil.QueryCoordRole:
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
rootCoordTopologyNode.Connected = append(rootCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[indexCoordRoleName],
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.IndexCoordRole,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
case typeutil.QueryCoordRole:
|
||||
if queryCoordErr == nil && queryCoordResp != nil {
|
||||
rootCoordTopologyNode.Connected = append(rootCoordTopologyNode.Connected, metricsinfo.ConnectionEdge{
|
||||
ConnectedIdentifier: identifierMap[queryCoordRoleName],
|
||||
Type: metricsinfo.Forward,
|
||||
TargetType: typeutil.QueryCoordRole,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// add root coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, rootCoordTopologyNode)
|
||||
}
|
||||
|
||||
// add root coord to system topology graph
|
||||
systemTopology.NodesInfo = append(systemTopology.NodesInfo, rootCoordTopologyNode)
|
||||
}
|
||||
|
||||
// add proxy to system topology graph
|
||||
|
|
|
@ -68,6 +68,7 @@ func TestProxy_metrics(t *testing.T) {
|
|||
HardwareInfos: metricsinfo.HardwareMetrics{},
|
||||
SystemInfo: metricsinfo.DeployMetrics{},
|
||||
Type: typeutil.RootCoordRole,
|
||||
ID: id,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.RootCoordConfiguration{},
|
||||
},
|
||||
|
@ -112,6 +113,7 @@ func TestProxy_metrics(t *testing.T) {
|
|||
HardwareInfos: metricsinfo.HardwareMetrics{},
|
||||
SystemInfo: metricsinfo.DeployMetrics{},
|
||||
Type: typeutil.QueryCoordRole,
|
||||
ID: id,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.QueryCoordConfiguration{},
|
||||
},
|
||||
|
@ -167,6 +169,7 @@ func TestProxy_metrics(t *testing.T) {
|
|||
HardwareInfos: metricsinfo.HardwareMetrics{},
|
||||
SystemInfo: metricsinfo.DeployMetrics{},
|
||||
Type: typeutil.DataCoordRole,
|
||||
ID: id,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.DataCoordConfiguration{},
|
||||
},
|
||||
|
@ -223,6 +226,7 @@ func TestProxy_metrics(t *testing.T) {
|
|||
HardwareInfos: metricsinfo.HardwareMetrics{},
|
||||
SystemInfo: metricsinfo.DeployMetrics{},
|
||||
Type: typeutil.IndexCoordRole,
|
||||
ID: id,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.IndexCoordConfiguration{},
|
||||
},
|
||||
|
|
|
@ -15,6 +15,8 @@ import (
|
|||
"context"
|
||||
"os"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/uniquegenerator"
|
||||
|
||||
"github.com/milvus-io/milvus/internal/util/typeutil"
|
||||
|
||||
"go.uber.org/zap"
|
||||
|
@ -53,6 +55,7 @@ func getSystemInfoMetrics(
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.QueryCoordRole,
|
||||
ID: qc.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.QueryCoordConfiguration{
|
||||
SearchChannelPrefix: Params.SearchChannelPrefix,
|
||||
|
@ -73,6 +76,7 @@ func getSystemInfoMetrics(
|
|||
ErrorReason: nodeMetrics.err.Error(),
|
||||
// Name doesn't matter here cause we can't get it when error occurs, using address as the Name?
|
||||
Name: "",
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
})
|
||||
continue
|
||||
|
@ -87,6 +91,7 @@ func getSystemInfoMetrics(
|
|||
HasError: true,
|
||||
ErrorReason: nodeMetrics.resp.Status.Reason,
|
||||
Name: nodeMetrics.resp.ComponentName,
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
})
|
||||
continue
|
||||
|
@ -102,6 +107,7 @@ func getSystemInfoMetrics(
|
|||
HasError: true,
|
||||
ErrorReason: err.Error(),
|
||||
Name: nodeMetrics.resp.ComponentName,
|
||||
ID: int64(uniquegenerator.GetUniqueIntGeneratorIns().GetInt()),
|
||||
},
|
||||
})
|
||||
continue
|
||||
|
|
|
@ -47,6 +47,7 @@ func getSystemInfoMetrics(ctx context.Context, req *milvuspb.GetMetricsRequest,
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.QueryNodeRole,
|
||||
ID: node.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.QueryNodeConfiguration{
|
||||
SearchReceiveBufSize: Params.SearchReceiveBufSize,
|
||||
|
|
|
@ -46,6 +46,7 @@ func (c *Core) getSystemInfoMetrics(ctx context.Context, req *milvuspb.GetMetric
|
|||
CreatedTime: Params.CreatedTime.String(),
|
||||
UpdatedTime: Params.UpdatedTime.String(),
|
||||
Type: typeutil.RootCoordRole,
|
||||
ID: c.session.ServerID,
|
||||
},
|
||||
SystemConfigurations: metricsinfo.RootCoordConfiguration{
|
||||
MinSegmentSizeToEnableIndex: Params.MinSegmentSizeToEnableIndex,
|
||||
|
|
|
@ -75,6 +75,7 @@ type BaseComponentInfos struct {
|
|||
CreatedTime string `json:"created_time"`
|
||||
UpdatedTime string `json:"updated_time"`
|
||||
Type string `json:"type"`
|
||||
ID int64 `json:"id"`
|
||||
}
|
||||
|
||||
// QueryNodeConfiguration records the configuration of query node.
|
||||
|
|
|
@ -44,6 +44,7 @@ func TestBaseComponentInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.ProxyRole,
|
||||
ID: 1,
|
||||
}
|
||||
s, err := MarshalComponentInfos(infos1)
|
||||
assert.Equal(t, nil, err)
|
||||
|
@ -77,6 +78,7 @@ func TestQueryNodeInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.QueryNodeRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: QueryNodeConfiguration{
|
||||
SearchReceiveBufSize: 1024,
|
||||
|
@ -121,6 +123,7 @@ func TestQueryCoordInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.QueryCoordRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: QueryCoordConfiguration{
|
||||
SearchChannelPrefix: "search",
|
||||
|
@ -159,6 +162,7 @@ func TestIndexNodeInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.IndexNodeRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: IndexNodeConfiguration{
|
||||
MinioBucketName: "a-bucket",
|
||||
|
@ -198,6 +202,7 @@ func TestIndexCoordInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.IndexCoordRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: IndexCoordConfiguration{
|
||||
MinioBucketName: "a-bucket",
|
||||
|
@ -235,6 +240,7 @@ func TestDataNodeInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.DataNodeRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: DataNodeConfiguration{
|
||||
FlushInsertBufferSize: 1024,
|
||||
|
@ -272,6 +278,7 @@ func TestDataCoordInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.DataCoordRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: DataCoordConfiguration{
|
||||
SegmentMaxSize: 1024 * 1024,
|
||||
|
@ -309,6 +316,7 @@ func TestRootCoordInfos_Codec(t *testing.T) {
|
|||
CreatedTime: time.Now().String(),
|
||||
UpdatedTime: time.Now().String(),
|
||||
Type: typeutil.RootCoordRole,
|
||||
ID: 1,
|
||||
},
|
||||
SystemConfigurations: RootCoordConfiguration{
|
||||
MinSegmentSizeToEnableIndex: 1024 * 10,
|
||||
|
|
|
@ -43,17 +43,20 @@ func TestQueryClusterTopology_Codec(t *testing.T) {
|
|||
Self: QueryCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
ConnectedNodes: []QueryNodeInfos{
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 1),
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 2),
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 3),
|
||||
ID: 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -78,17 +81,20 @@ func TestQueryCoordTopology_Codec(t *testing.T) {
|
|||
Self: QueryCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
ConnectedNodes: []QueryNodeInfos{
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 1),
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 2),
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 3),
|
||||
ID: 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -126,17 +132,20 @@ func TestIndexClusterTopology_Codec(t *testing.T) {
|
|||
Self: IndexCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.IndexCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
ConnectedNodes: []IndexNodeInfos{
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 1),
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 2),
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 3),
|
||||
ID: 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -161,17 +170,20 @@ func TestIndexCoordTopology_Codec(t *testing.T) {
|
|||
Self: IndexCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.IndexCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
ConnectedNodes: []IndexNodeInfos{
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 1),
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 2),
|
||||
Name: ConstructComponentName(typeutil.IndexNodeRole, 3),
|
||||
ID: 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -209,17 +221,20 @@ func TestDataClusterTopology_Codec(t *testing.T) {
|
|||
Self: DataCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.DataCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
ConnectedNodes: []DataNodeInfos{
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 1),
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 2),
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 3),
|
||||
ID: 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -244,17 +259,20 @@ func TestDataCoordTopology_Codec(t *testing.T) {
|
|||
Self: DataCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.DataCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
ConnectedNodes: []DataNodeInfos{
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 1),
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 2),
|
||||
Name: ConstructComponentName(typeutil.DataNodeRole, 3),
|
||||
ID: 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -292,6 +310,7 @@ func TestRootCoordTopology_Codec(t *testing.T) {
|
|||
Self: RootCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.RootCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
Connections: ConnTopology{
|
||||
|
@ -358,6 +377,7 @@ func TestSystemTopology_Codec(t *testing.T) {
|
|||
Infos: &QueryCoordInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryCoordRole, 1),
|
||||
ID: 1,
|
||||
},
|
||||
},
|
||||
Connected: []ConnectionEdge{
|
||||
|
@ -373,6 +393,7 @@ func TestSystemTopology_Codec(t *testing.T) {
|
|||
Infos: &QueryNodeInfos{
|
||||
BaseComponentInfos: BaseComponentInfos{
|
||||
Name: ConstructComponentName(typeutil.QueryNodeRole, 2),
|
||||
ID: 2,
|
||||
},
|
||||
},
|
||||
Connected: []ConnectionEdge{},
|
||||
|
|
Loading…
Reference in New Issue