Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
milvus
milvus
提交
241117dd
M
milvus
项目概览
milvus
/
milvus
9 个月 前同步成功
通知
260
Star
22476
Fork
2472
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
milvus
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
241117dd
编写于
8月 05, 2023
作者:
C
congqixia
提交者:
GitHub
8月 05, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use last end position in pursuit mode (#26144)
Signed-off-by:
N
Congqi Xia
<
congqi.xia@zilliz.com
>
上级
d2649b63
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
15 addition
and
7 deletion
+15
-7
pkg/mq/msgstream/mq_msgstream.go
pkg/mq/msgstream/mq_msgstream.go
+15
-7
未找到文件。
pkg/mq/msgstream/mq_msgstream.go
浏览文件 @
241117dd
...
...
@@ -28,6 +28,7 @@ import (
"github.com/golang/protobuf/proto"
"github.com/milvus-io/milvus-proto/go-api/v2/commonpb"
"github.com/milvus-io/milvus-proto/go-api/v2/msgpb"
"github.com/samber/lo"
"go.uber.org/zap"
"github.com/milvus-io/milvus/pkg/log"
...
...
@@ -594,8 +595,10 @@ func (ms *MqTtMsgStream) bufMsgPackToChannel() {
return
default
:
timeTickBuf
:=
make
([]
TsMsg
,
0
)
startMsgPosition
:=
make
([]
*
msgpb
.
MsgPosition
,
0
)
endMsgPositions
:=
make
([]
*
msgpb
.
MsgPosition
,
0
)
// startMsgPosition := make([]*msgpb.MsgPosition, 0)
// endMsgPositions := make([]*msgpb.MsgPosition, 0)
startPositions
:=
make
(
map
[
string
]
*
msgpb
.
MsgPosition
)
endPositions
:=
make
(
map
[
string
]
*
msgpb
.
MsgPosition
)
var
endTs
uint64
var
size
uint64
...
...
@@ -623,6 +626,11 @@ func (ms *MqTtMsgStream) bufMsgPackToChannel() {
if
len
(
msgs
)
==
0
{
continue
}
startPos
:=
typeutil
.
Clone
(
ms
.
chanMsgPos
[
consumer
])
channelName
:=
startPos
.
ChannelName
if
_
,
ok
:=
startPositions
[
channelName
];
!
ok
{
startPositions
[
channelName
]
=
startPos
}
tempBuffer
:=
make
([]
TsMsg
,
0
)
var
timeTickMsg
TsMsg
for
_
,
v
:=
range
msgs
{
...
...
@@ -639,7 +647,7 @@ func (ms *MqTtMsgStream) bufMsgPackToChannel() {
}
ms
.
chanMsgBuf
[
consumer
]
=
tempBuffer
startMsgPosition
=
append
(
startMsgPosition
,
proto
.
Clone
(
ms
.
chanMsgPos
[
consumer
])
.
(
*
msgpb
.
MsgPosition
))
//
startMsgPosition = append(startMsgPosition, proto.Clone(ms.chanMsgPos[consumer]).(*msgpb.MsgPosition))
var
newPos
*
msgpb
.
MsgPosition
if
len
(
tempBuffer
)
>
0
{
// if tempBuffer is not empty, use tempBuffer[0] to seek
...
...
@@ -649,7 +657,7 @@ func (ms *MqTtMsgStream) bufMsgPackToChannel() {
Timestamp
:
currTs
,
MsgGroup
:
consumer
.
Subscription
(),
}
end
MsgPositions
=
append
(
endMsgPositions
,
newPos
)
end
Positions
[
channelName
]
=
newPos
}
else
if
timeTickMsg
!=
nil
{
// if tempBuffer is empty, use timeTickMsg to seek
newPos
=
&
msgpb
.
MsgPosition
{
...
...
@@ -658,7 +666,7 @@ func (ms *MqTtMsgStream) bufMsgPackToChannel() {
Timestamp
:
currTs
,
MsgGroup
:
consumer
.
Subscription
(),
}
end
MsgPositions
=
append
(
endMsgPositions
,
newPos
)
end
Positions
[
channelName
]
=
newPos
}
ms
.
chanMsgPos
[
consumer
]
=
newPos
}
...
...
@@ -683,8 +691,8 @@ func (ms *MqTtMsgStream) bufMsgPackToChannel() {
BeginTs
:
ms
.
lastTimeStamp
,
EndTs
:
endTs
,
Msgs
:
uniqueMsgs
,
StartPositions
:
startMsgPosition
,
EndPositions
:
endMsgPositions
,
StartPositions
:
lo
.
MapToSlice
(
startPositions
,
func
(
_
string
,
pos
*
msgpb
.
MsgPosition
)
*
msgpb
.
MsgPosition
{
return
pos
})
,
EndPositions
:
lo
.
MapToSlice
(
endPositions
,
func
(
_
string
,
pos
*
msgpb
.
MsgPosition
)
*
msgpb
.
MsgPosition
{
return
pos
})
,
}
select
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录