提交 e3956ad1 编写于 作者: C congqixia 提交者: zhenshan.cao

Change SaveBinLogPaths field2Path to repeated (#8)

Signed-off-by: NCongqi Xia <congqi.xia@zilliz.com>
上级 ef563fda
......@@ -313,12 +313,12 @@ func (node *DataNode) FlushSegments(ctx context.Context, req *datapb.FlushSegmen
waitReceive := func(wg *sync.WaitGroup, flushedCh interface{}, req *datapb.SaveBinlogPathsRequest) {
defer wg.Done()
switch flushedCh.(type) {
switch Ch := flushedCh.(type) {
case chan []*datapb.ID2PathList:
select {
case <-time.After(300 * time.Second):
return
case meta := <-flushedCh.(chan []*datapb.ID2PathList):
case meta := <-Ch:
if meta == nil {
log.Info("Dml messages flush failed!")
// Modify req to confirm failure
......@@ -333,7 +333,7 @@ func (node *DataNode) FlushSegments(ctx context.Context, req *datapb.FlushSegmen
select {
case <-time.After(300 * time.Second):
return
case meta := <-flushedCh.(chan []*datapb.DDLBinlogMeta):
case meta := <-Ch:
if meta == nil {
log.Info("Ddl messages flush failed!")
// Modify req to confirm failure
......
......@@ -538,13 +538,16 @@ func (s *Server) prepareBinlogAndPos(req *datapb.SaveBinlogPathsRequest) (map[st
}
log.Debug("segment", zap.Int64("segment", segInfo.CollectionID))
fieldMeta, err := s.prepareField2PathMeta(req.SegmentID, req.Field2BinlogPaths)
if err != nil {
return nil, err
}
for k, v := range fieldMeta {
meta[k] = v
for _, fieldBlp := range req.Field2BinlogPaths {
fieldMeta, err := s.prepareField2PathMeta(req.SegmentID, fieldBlp)
if err != nil {
return nil, err
}
for k, v := range fieldMeta {
meta[k] = v
}
}
ddlMeta, err := s.prepareDDLBinlogMeta(req.CollectionID, req.GetDdlBinlogPaths())
if err != nil {
return nil, err
......
......@@ -537,9 +537,11 @@ func TestSaveBinlogPaths(t *testing.T) {
},
SegmentID: 2,
CollectionID: 0,
Field2BinlogPaths: &datapb.ID2PathList{
ID: 1,
Paths: []string{"/by-dev/test/0/1/2/1/Allo1", "/by-dev/test/0/1/2/1/Allo2"},
Field2BinlogPaths: []*datapb.ID2PathList{
{
ID: 1,
Paths: []string{"/by-dev/test/0/1/2/1/Allo1", "/by-dev/test/0/1/2/1/Allo2"},
},
},
DdlBinlogPaths: []*datapb.DDLBinlogMeta{
{
......@@ -588,9 +590,11 @@ func TestSaveBinlogPaths(t *testing.T) {
resp, err := svr.SaveBinlogPaths(ctx, &datapb.SaveBinlogPathsRequest{
SegmentID: 10,
CollectionID: 5,
Field2BinlogPaths: &datapb.ID2PathList{
ID: 1,
Paths: []string{"/by-dev/test/0/1/2/1/Allo1", "/by-dev/test/0/1/2/1/Allo2"},
Field2BinlogPaths: []*datapb.ID2PathList{
{
ID: 1,
Paths: []string{"/by-dev/test/0/1/2/1/Allo1", "/by-dev/test/0/1/2/1/Allo2"},
},
},
DdlBinlogPaths: []*datapb.DDLBinlogMeta{
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册