mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-12-17 19:47:06 +08:00
update skip logic.
This commit is contained in:
parent
7c482c9466
commit
d467381b6f
@ -1231,6 +1231,7 @@ func (m *MsgMgo) GetDocIDs(ctx context.Context) ([]string, error) {
|
|||||||
limit := 5000
|
limit := 5000
|
||||||
var skip int
|
var skip int
|
||||||
var docIDs []string
|
var docIDs []string
|
||||||
|
var offset int
|
||||||
|
|
||||||
count, err := m.coll.CountDocuments(ctx, bson.M{})
|
count, err := m.coll.CountDocuments(ctx, bson.M{})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -1241,7 +1242,8 @@ func (m *MsgMgo) GetDocIDs(ctx context.Context) ([]string, error) {
|
|||||||
skip = 0
|
skip = 0
|
||||||
} else {
|
} else {
|
||||||
rand.Seed(uint64(time.Now().UnixMilli()))
|
rand.Seed(uint64(time.Now().UnixMilli()))
|
||||||
skip = rand.Intn(int(count))
|
skip = rand.Intn(int(count / int64(limit)))
|
||||||
|
offset = skip * (int(count) / limit)
|
||||||
}
|
}
|
||||||
|
|
||||||
res, err := mongoutil.Aggregate[*model.MsgDocModel](ctx, m.coll, []bson.M{
|
res, err := mongoutil.Aggregate[*model.MsgDocModel](ctx, m.coll, []bson.M{
|
||||||
@ -1251,7 +1253,7 @@ func (m *MsgMgo) GetDocIDs(ctx context.Context) ([]string, error) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"$skip": skip,
|
"$skip": offset,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"$limit": limit,
|
"$limit": limit,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user