Merge pull request #3658 from withchao/pre-release-v3.8.4

fix: Mongo Malloc upsert overwrites min_seq initialization
pre-release-v3.8.4
chao 1 week ago committed by GitHub
commit 7fc94895b5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -57,8 +57,8 @@ func (s *seqConversationMongo) Malloc(ctx context.Context, conversationID string
}
filter := map[string]any{"conversation_id": conversationID}
update := map[string]any{
"$inc": map[string]any{"max_seq": size},
"$set": map[string]any{"min_seq": int64(0)},
"$inc": map[string]any{"max_seq": size},
"$setOnInsert": map[string]any{"min_seq": int64(0)},
}
opt := options.FindOneAndUpdate().SetUpsert(true).SetReturnDocument(options.After).SetProjection(map[string]any{"_id": 0, "max_seq": 1})
lastSeq, err := mongoutil.FindOneAndUpdate[int64](ctx, s.coll, filter, update, opt)

Loading…
Cancel
Save