diff --git a/go/chao-sdk-core/pkg/datafetcher/datafetcher.go b/go/chao-sdk-core/pkg/datafetcher/datafetcher.go index cb7972b..0d44972 100644 --- a/go/chao-sdk-core/pkg/datafetcher/datafetcher.go +++ b/go/chao-sdk-core/pkg/datafetcher/datafetcher.go @@ -86,12 +86,14 @@ func (ds *DataFetcher[T]) FetchMissingAndFillLocal(ctx context.Context, uids []s if err != nil { return nil, err } + if len(serverData) > 0 { + if err := ds.batchInsert(ctx, serverData); err != nil { + return nil, err + } - if err := ds.batchInsert(ctx, serverData); err != nil { - return nil, err + localData = append(localData, serverData...) } - localData = append(localData, serverData...) } return localData, nil diff --git a/go/chao-sdk-core/pkg/db/group_member_model.go b/go/chao-sdk-core/pkg/db/group_member_model.go index 4f980fb..33436ae 100644 --- a/go/chao-sdk-core/pkg/db/group_member_model.go +++ b/go/chao-sdk-core/pkg/db/group_member_model.go @@ -194,7 +194,7 @@ func (d *DataBase) InsertGroupMember(ctx context.Context, groupMember *model_str func (d *DataBase) BatchInsertGroupMember(ctx context.Context, groupMemberList []*model_struct.LocalGroupMember) error { d.groupMtx.Lock() defer d.groupMtx.Unlock() - return errs.WrapMsg(d.conn.WithContext(ctx).Create(groupMemberList).Error, "BatchInsertMessageList failed") + return errs.WrapMsg(d.conn.WithContext(ctx).Create(groupMemberList).Error, "BatchInsertGroupMember failed") } func (d *DataBase) DeleteGroupMember(ctx context.Context, groupID, userID string) error {