mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-08 01:58:34 +08:00
Fix query request lost bug (#7715)
Issue: #7633 Signed-off-by: sunby <bingyi.sun@zilliz.com>
This commit is contained in:
parent
ce33855652
commit
db01040b53
@ -165,9 +165,10 @@ func (q *queryCollection) addToUnsolvedMsg(msg queryMsg) {
|
|||||||
func (q *queryCollection) popAllUnsolvedMsg() []queryMsg {
|
func (q *queryCollection) popAllUnsolvedMsg() []queryMsg {
|
||||||
q.unsolvedMsgMu.Lock()
|
q.unsolvedMsgMu.Lock()
|
||||||
defer q.unsolvedMsgMu.Unlock()
|
defer q.unsolvedMsgMu.Unlock()
|
||||||
tmp := q.unsolvedMsg
|
ret := make([]queryMsg, 0, len(q.unsolvedMsg))
|
||||||
|
ret = append(ret, q.unsolvedMsg...)
|
||||||
q.unsolvedMsg = q.unsolvedMsg[:0]
|
q.unsolvedMsg = q.unsolvedMsg[:0]
|
||||||
return tmp
|
return ret
|
||||||
}
|
}
|
||||||
|
|
||||||
func (q *queryCollection) waitNewTSafe() Timestamp {
|
func (q *queryCollection) waitNewTSafe() Timestamp {
|
||||||
|
|||||||
@ -447,3 +447,36 @@ func TestResultHandlerStage_TranslateHits(t *testing.T) {
|
|||||||
assert.Error(t, err)
|
assert.Error(t, err)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestQueryCollection_AddPopUnsolvedMsg(t *testing.T) {
|
||||||
|
ctx, cancel := context.WithCancel(context.TODO())
|
||||||
|
qCollection, err := genSimpleQueryCollection(ctx, cancel)
|
||||||
|
assert.Nil(t, err)
|
||||||
|
var i int64
|
||||||
|
for i = 0; i < 3; i++ {
|
||||||
|
qCollection.addToUnsolvedMsg(&msgstream.RetrieveMsg{
|
||||||
|
RetrieveRequest: internalpb.RetrieveRequest{
|
||||||
|
Base: &commonpb.MsgBase{MsgID: i},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
unsolved := qCollection.popAllUnsolvedMsg()
|
||||||
|
assert.EqualValues(t, 3, len(unsolved))
|
||||||
|
for i := 0; i < 3; i++ {
|
||||||
|
assert.EqualValues(t, i, unsolved[i].ID())
|
||||||
|
}
|
||||||
|
|
||||||
|
// add new msg to unsolved msgs and check old unsolved msg
|
||||||
|
for i := 0; i < 3; i++ {
|
||||||
|
qCollection.addToUnsolvedMsg(&msgstream.RetrieveMsg{
|
||||||
|
RetrieveRequest: internalpb.RetrieveRequest{
|
||||||
|
Base: &commonpb.MsgBase{MsgID: 4},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
for i := 0; i < 3; i++ {
|
||||||
|
assert.EqualValues(t, i, unsolved[i].ID())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user