Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: GetMsgBySeqs boundary issues #2647

Merged
merged 125 commits into from
Sep 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
125 commits
Select commit Hold shift + click to select a range
4c3c455
fix: GroupApplicationAcceptedNotification
withchao Jan 11, 2024
f5f2cf4
Merge remote-tracking branch 'origin/main'
withchao Jan 11, 2024
ad979d4
Merge branch 'openimsdk:main' into main
withchao Jan 11, 2024
a00d77a
fix: GroupApplicationAcceptedNotification
withchao Jan 11, 2024
48ff03f
fix: NotificationUserInfoUpdate
withchao Jan 12, 2024
45859d9
Merge branch 'openimsdk:main' into main
withchao Jan 16, 2024
e3d78de
Merge branch 'openimsdk:main' into main
withchao Jan 18, 2024
c81e199
Merge branch 'openimsdk:main' into main
withchao Jan 22, 2024
4266fed
cicd: robot automated Change
withchao Jan 22, 2024
1a14191
Merge remote-tracking branch 'upstream/main'
withchao Jan 26, 2024
86d3a66
Merge branch 'openimsdk:main' into main
withchao Jan 28, 2024
1964a4b
Merge branch 'openimsdk:main' into main
withchao Jan 31, 2024
d91cde9
Merge branch 'openimsdk:main' into main
withchao Feb 5, 2024
6a05e64
Merge branch 'openimsdk:main' into main
withchao Feb 20, 2024
39a6141
Merge branch 'openimsdk:main' into main
withchao Mar 6, 2024
c2009ce
Merge branch 'openimsdk:main' into main
withchao Mar 7, 2024
34c7f22
Merge branch 'openimsdk:main' into main
withchao Mar 8, 2024
ea9c75b
Merge branch 'openimsdk:main' into main
withchao Mar 13, 2024
7b5279a
fix: component
withchao Mar 13, 2024
34daf13
fix: getConversationInfo
withchao Mar 13, 2024
65d58ae
Merge branch 'openimsdk:main' into main
withchao Mar 13, 2024
e601b5f
Merge remote-tracking branch 'upstream/main'
withchao Mar 20, 2024
5f72b1e
Merge remote-tracking branch 'origin/main'
withchao Mar 20, 2024
20dfafd
Merge branch 'openimsdk:main' into main
withchao Apr 24, 2024
dc57d38
feat: cron task
withchao Apr 25, 2024
2f13149
feat: cron task
withchao Apr 25, 2024
2e43950
feat: cron task
withchao Apr 25, 2024
7a29a85
feat: cron task
withchao Apr 26, 2024
3920c06
feat: cron task
withchao Apr 26, 2024
bed7a60
Merge branch 'openimsdk:main' into main
withchao Apr 26, 2024
f2fbf19
Merge remote-tracking branch 'refs/remotes/origin/main' into corn37
withchao Apr 26, 2024
01851df
Merge remote-tracking branch 'upstream/main'
withchao Apr 28, 2024
480ccc7
fix: minio config url recognition error
withchao Apr 28, 2024
1046323
Merge branch 'openimsdk:main' into main
withchao May 8, 2024
76c6fe8
Merge branch 'openimsdk:main' into main
withchao May 10, 2024
6b119bd
Merge branch 'openimsdk:main' into main
withchao May 17, 2024
61740d4
Merge branch 'openimsdk:main' into main
withchao May 30, 2024
17dad5c
Merge branch 'openimsdk:main' into main
withchao Jun 12, 2024
5156795
Merge branch 'openimsdk:main' into main
withchao Jun 17, 2024
4781cf4
Merge branch 'openimsdk:main' into main
withchao Jul 1, 2024
bfbfb78
Merge branch 'openimsdk:main' into main
withchao Jul 3, 2024
8d4737c
update gomake version
withchao Jul 3, 2024
0b4c802
update gomake version
withchao Jul 3, 2024
a464750
Merge branch 'openimsdk:main' into main
withchao Jul 4, 2024
ab84d77
Merge branch 'openimsdk:main' into main
withchao Jul 5, 2024
df9bbeb
Merge branch 'openimsdk:main' into main
withchao Jul 9, 2024
fdb6ea7
Merge branch 'openimsdk:main' into main
withchao Jul 10, 2024
18cc83c
Merge branch 'openimsdk:main' into main
withchao Jul 11, 2024
33de30b
Merge branch 'openimsdk:main' into main
withchao Jul 15, 2024
71ba69b
Merge branch 'openimsdk:main' into main
withchao Jul 15, 2024
904c669
Merge branch 'openimsdk:main' into main
withchao Jul 17, 2024
6df8412
Merge branch 'openimsdk:main' into main
withchao Jul 17, 2024
2ce8d22
fix: seq conversion bug
withchao Jul 17, 2024
d521f0b
fix: redis pipe exec
withchao Jul 17, 2024
87b88e0
Merge branch 'openimsdk:main' into main
withchao Jul 17, 2024
091f9c3
Merge branch 'openimsdk:main' into main
withchao Jul 18, 2024
4d42fe9
Merge branch 'openimsdk:main' into main
withchao Jul 19, 2024
eca9abe
Merge branch 'openimsdk:main' into main
withchao Jul 22, 2024
f7bcbad
Merge branch 'openimsdk:main' into main
withchao Jul 24, 2024
0885703
Merge branch 'openimsdk:main' into main
withchao Jul 25, 2024
57b35ad
Merge branch 'openimsdk:main' into main
withchao Jul 26, 2024
ae5e433
Merge branch 'openimsdk:main' into main
withchao Jul 29, 2024
882d24b
fix: ImportFriends
withchao Jul 29, 2024
82c903a
Merge branch 'openimsdk:main' into main
withchao Jul 29, 2024
e4817d6
Merge branch 'openimsdk:main' into main
withchao Jul 31, 2024
9f1587f
Merge branch 'openimsdk:main' into main
withchao Jul 31, 2024
3b4d9f7
Merge branch 'openimsdk:main' into main
withchao Aug 1, 2024
e2bf593
Merge branch 'openimsdk:main' into main
withchao Aug 2, 2024
9e907e5
Merge branch 'openimsdk:main' into main
withchao Aug 6, 2024
31f1476
Merge branch 'openimsdk:main' into main
withchao Aug 13, 2024
0f86c4b
fix: A large number of logs keysAndValues ​​length is not even
withchao Aug 16, 2024
1fcb46b
Merge branch 'openimsdk:main' into main
withchao Aug 16, 2024
e112a4d
Merge branch 'openimsdk:main' into main
withchao Aug 19, 2024
62f58de
Merge branch 'openimsdk:main' into main
withchao Aug 21, 2024
c14dcb7
Merge branch 'openimsdk:main' into main
withchao Aug 23, 2024
6cf385b
feat: mark read aggregate write
withchao Aug 23, 2024
3b6463d
feat: online status supports redis cluster
withchao Aug 26, 2024
d2e1675
feat: online status supports redis cluster
withchao Aug 26, 2024
d0dcd9a
Merge remote-tracking branch 'upstream/main'
withchao Aug 26, 2024
770dac3
feat: online status supports redis cluster
withchao Aug 26, 2024
b909967
merge
withchao Aug 26, 2024
54a4241
Merge remote-tracking branch 'upstream/main'
withchao Aug 26, 2024
5f8713a
merge
withchao Aug 26, 2024
764b47e
read seq is written to mongo
withchao Aug 26, 2024
12bbd88
read seq is written to mongo
withchao Aug 26, 2024
bbbb682
Merge branch 'openimsdk:main' into main
withchao Aug 27, 2024
e7a4ef3
fix: invitation to join group notification
withchao Aug 27, 2024
45a2031
fix: friend op_user_id
withchao Aug 29, 2024
fa375f2
feat: optimizing asynchronous context
withchao Aug 29, 2024
6a2d8ef
feat: optimizing memamq size
withchao Aug 29, 2024
6a3c894
Merge remote-tracking branch 'upstream/main'
withchao Aug 29, 2024
2cfc354
Merge branch 'openimsdk:main' into main
withchao Aug 29, 2024
36ff8d4
Merge branch 'openimsdk:main' into main
withchao Aug 31, 2024
790f39f
feat: add GetSeqMessage
withchao Aug 31, 2024
f65cfba
feat: GroupApplicationAgreeMemberEnterNotification
withchao Sep 3, 2024
39f529d
feat: GroupApplicationAgreeMemberEnterNotification
withchao Sep 3, 2024
e3b808e
Merge remote-tracking branch 'refs/remotes/upstream/main'
withchao Sep 3, 2024
74c8dc4
feat: go.mod
withchao Sep 3, 2024
4c14282
feat: go.mod
withchao Sep 3, 2024
bf3cfa1
feat: join group notification and get seq
withchao Sep 4, 2024
c9e98c7
feat: join group notification and get seq
withchao Sep 5, 2024
f73f169
Merge remote-tracking branch 'upstream/main'
withchao Sep 5, 2024
4b56b6f
Merge branch 'openimsdk:main' into main
withchao Sep 5, 2024
a46fae3
feat: avoid pulling messages from sessions with a large number of max…
withchao Sep 9, 2024
b378b57
Merge branch 'openimsdk:main' into main
withchao Sep 10, 2024
246a366
Merge branch 'openimsdk:main' into main
withchao Sep 11, 2024
5b134bc
feat: API supports gzip
withchao Sep 11, 2024
6c76d69
Merge remote-tracking branch 'upstream/main'
withchao Sep 12, 2024
59d606c
go.mod
withchao Sep 12, 2024
ab3517b
Merge branch 'openimsdk:main' into main
withchao Sep 12, 2024
f7f0af2
fix: nil pointer error on close
withchao Sep 12, 2024
b2473bc
Merge remote-tracking branch 'origin/main'
withchao Sep 12, 2024
b65f594
fix: listen error
withchao Sep 12, 2024
3677e78
Merge branch 'openimsdk:main' into main
withchao Sep 12, 2024
70532d5
fix: listen error
withchao Sep 12, 2024
747c00a
Merge remote-tracking branch 'origin/main'
withchao Sep 12, 2024
eb45a0c
Merge remote-tracking branch 'upstream/main'
withchao Sep 12, 2024
f83004a
update go.mod
withchao Sep 12, 2024
91865f0
Merge branch 'openimsdk:main' into main
withchao Sep 18, 2024
bcf397c
feat: add log
withchao Sep 18, 2024
f5c27ed
Merge branch 'openimsdk:main' into main
withchao Sep 18, 2024
25c035d
Merge branch 'openimsdk:main' into main
withchao Sep 23, 2024
bd423ed
fix: token parse token value
withchao Sep 23, 2024
befe568
fix: GetMsgBySeqs boundary issues
withchao Sep 23, 2024
6b04325
Merge branch 'openimsdk:main' into main
withchao Sep 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions pkg/common/storage/cache/redis/token.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ import (
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/cache"
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/cache/cachekey"
"github.com/openimsdk/tools/errs"
"github.com/openimsdk/tools/utils/stringutil"
"github.com/redis/go-redis/v9"
"strconv"
"time"
)

Expand Down Expand Up @@ -58,9 +58,12 @@ func (c *tokenCache) GetTokensWithoutError(ctx context.Context, userID string, p
}
mm := make(map[string]int)
for k, v := range m {
mm[k] = stringutil.StringToInt(v)
state, err := strconv.Atoi(v)
if err != nil {
return nil, errs.WrapMsg(err, "redis token value is not int", "value", v, "userID", userID, "platformID", platformID)
}
mm[k] = state
}

return mm, nil
}

Expand Down
19 changes: 16 additions & 3 deletions pkg/common/storage/controller/msg.go
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,7 @@ func (db *commonMsgDatabase) GetMsgBySeqsRange(ctx context.Context, userID strin

func (db *commonMsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, conversationID string, seqs []int64) (int64, int64, []*sdkws.MsgData, error) {
userMinSeq, err := db.seqUser.GetUserMinSeq(ctx, conversationID, userID)
if err != nil && errs.Unwrap(err) != redis.Nil {
if err != nil {
return 0, 0, nil, err
}
minSeq, err := db.seqConversation.GetMinSeq(ctx, conversationID)
Expand All @@ -457,15 +457,28 @@ func (db *commonMsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, co
if err != nil {
return 0, 0, nil, err
}
if userMinSeq < minSeq {
userMaxSeq, err := db.seqUser.GetUserMaxSeq(ctx, conversationID, userID)
if err != nil {
return 0, 0, nil, err
}
if userMinSeq > minSeq {
minSeq = userMinSeq
}
var newSeqs []int64
if userMaxSeq > 0 && userMaxSeq < maxSeq {
maxSeq = userMaxSeq
}
newSeqs := make([]int64, 0, len(seqs))
for _, seq := range seqs {
if seq <= 0 {
continue
}
if seq >= minSeq && seq <= maxSeq {
newSeqs = append(newSeqs, seq)
}
}
if len(newSeqs) == 0 {
return minSeq, maxSeq, nil, nil
}
successMsgs, failedSeqs, err := db.msg.GetMessagesBySeq(ctx, conversationID, newSeqs)
if err != nil {
if err != redis.Nil {
Expand Down
Loading