diff --git a/server/channels/app/channel.go b/server/channels/app/channel.go index cca6c41034..29f1fda3b6 100644 --- a/server/channels/app/channel.go +++ b/server/channels/app/channel.go @@ -175,7 +175,7 @@ func (a *App) JoinDefaultChannels(c request.CTX, teamID string, user *model.User NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = a.Srv().Store().Channel().SaveMember(cm) + _, nErr = a.Srv().Store().Channel().SaveMember(c, cm) if histErr := a.Srv().Store().ChannelMemberHistory().LogJoinEvent(user.Id, channel.Id, model.GetMillis()); histErr != nil { return model.NewAppError("JoinDefaultChannels", "app.channel_member_history.log_join_event.internal_error", nil, "", http.StatusInternalServerError).Wrap(histErr) } @@ -352,7 +352,7 @@ func (a *App) CreateChannel(c request.CTX, channel *model.Channel, addMember boo NotifyProps: model.GetDefaultChannelNotifyProps(), } - if _, nErr := a.Srv().Store().Channel().SaveMember(cm); nErr != nil { + if _, nErr := a.Srv().Store().Channel().SaveMember(c, cm); nErr != nil { var appErr *model.AppError var cErr *store.ErrConflict switch { @@ -648,7 +648,7 @@ func (a *App) createGroupChannel(c request.CTX, userIDs []string) (*model.Channe SchemeUser: !user.IsGuest(), } - if _, nErr = a.Srv().Store().Channel().SaveMember(cm); nErr != nil { + if _, nErr = a.Srv().Store().Channel().SaveMember(c, cm); nErr != nil { var appErr *model.AppError var cErr *store.ErrConflict switch { @@ -1619,7 +1619,7 @@ func (a *App) addUserToChannel(c request.CTX, user *model.User, channel *model.C newMember.SchemeAdmin = userShouldBeAdmin } - newMember, nErr = a.Srv().Store().Channel().SaveMember(newMember) + newMember, nErr = a.Srv().Store().Channel().SaveMember(c, newMember) if nErr != nil { return nil, model.NewAppError("AddUserToChannel", "api.channel.add_user.to.channel.failed.app_error", nil, fmt.Sprintf("failed to add member: %v, user_id: %s, channel_id: %s", nErr, user.Id, channel.Id), http.StatusInternalServerError) diff --git a/server/channels/app/email/helper_test.go b/server/channels/app/email/helper_test.go index fa8d2094a9..f55984f151 100644 --- a/server/channels/app/email/helper_test.go +++ b/server/channels/app/email/helper_test.go @@ -206,7 +206,7 @@ func (th *TestHelper) addUserToChannel(channel *model.Channel, user *model.User) } var err error - newMember, err = th.store.Channel().SaveMember(newMember) + newMember, err = th.store.Channel().SaveMember(th.Context, newMember) if err != nil { panic(err) } diff --git a/server/channels/store/localcachelayer/channel_layer.go b/server/channels/store/localcachelayer/channel_layer.go index 2240b76146..12e988af90 100644 --- a/server/channels/store/localcachelayer/channel_layer.go +++ b/server/channels/store/localcachelayer/channel_layer.go @@ -205,8 +205,8 @@ func (s LocalCacheChannelStore) GetMany(ids []string, allowFromCache bool) (mode return append(foundChannels, channels...), nil } -func (s LocalCacheChannelStore) SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) { - member, err := s.ChannelStore.SaveMember(member) +func (s LocalCacheChannelStore) SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) { + member, err := s.ChannelStore.SaveMember(rctx, member) if err != nil { return nil, err } diff --git a/server/channels/store/opentracinglayer/opentracinglayer.go b/server/channels/store/opentracinglayer/opentracinglayer.go index b0d9bdda2b..131a81e845 100644 --- a/server/channels/store/opentracinglayer/opentracinglayer.go +++ b/server/channels/store/opentracinglayer/opentracinglayer.go @@ -2306,7 +2306,7 @@ func (s *OpenTracingLayerChannelStore) SaveDirectChannel(ctx request.CTX, channe return result, err } -func (s *OpenTracingLayerChannelStore) SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) { +func (s *OpenTracingLayerChannelStore) SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) { origCtx := s.Root.Store.Context() span, newCtx := tracing.StartSpanWithParentByContext(s.Root.Store.Context(), "ChannelStore.SaveMember") s.Root.Store.SetContext(newCtx) @@ -2315,7 +2315,7 @@ func (s *OpenTracingLayerChannelStore) SaveMember(member *model.ChannelMember) ( }() defer span.Finish() - result, err := s.ChannelStore.SaveMember(member) + result, err := s.ChannelStore.SaveMember(rctx, member) if err != nil { span.LogFields(spanlog.Error(err)) ext.Error.Set(span, true) diff --git a/server/channels/store/retrylayer/retrylayer.go b/server/channels/store/retrylayer/retrylayer.go index 572d34cdfc..4a650873cd 100644 --- a/server/channels/store/retrylayer/retrylayer.go +++ b/server/channels/store/retrylayer/retrylayer.go @@ -2531,11 +2531,11 @@ func (s *RetryLayerChannelStore) SaveDirectChannel(ctx request.CTX, channel *mod } -func (s *RetryLayerChannelStore) SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) { +func (s *RetryLayerChannelStore) SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) { tries := 0 for { - result, err := s.ChannelStore.SaveMember(member) + result, err := s.ChannelStore.SaveMember(rctx, member) if err == nil { return result, nil } diff --git a/server/channels/store/searchlayer/channel_layer.go b/server/channels/store/searchlayer/channel_layer.go index ea3bebf67c..88b8c52788 100644 --- a/server/channels/store/searchlayer/channel_layer.go +++ b/server/channels/store/searchlayer/channel_layer.go @@ -100,11 +100,8 @@ func (c *SearchChannelStore) UpdateMember(rctx request.CTX, cm *model.ChannelMem return member, err } -func (c *SearchChannelStore) SaveMember(cm *model.ChannelMember) (*model.ChannelMember, error) { - // TODO: Use the actuall request context from the App layer - // https://mattermost.atlassian.net/browse/MM-55734 - rctx := request.EmptyContext(c.rootStore.Logger()) - member, err := c.ChannelStore.SaveMember(cm) +func (c *SearchChannelStore) SaveMember(rctx request.CTX, cm *model.ChannelMember) (*model.ChannelMember, error) { + member, err := c.ChannelStore.SaveMember(rctx, cm) if err == nil { c.rootStore.indexUserFromID(rctx, cm.UserId) channel, channelErr := c.ChannelStore.Get(member.ChannelId, true) diff --git a/server/channels/store/searchtest/helper.go b/server/channels/store/searchtest/helper.go index 78508d10c3..ef71e46015 100644 --- a/server/channels/store/searchtest/helper.go +++ b/server/channels/store/searchtest/helper.go @@ -432,7 +432,7 @@ func (th *SearchTestHelper) addUserToTeams(user *model.User, teamIDS []string) e func (th *SearchTestHelper) addUserToChannels(user *model.User, channelIDS []string) error { for _, channelID := range channelIDS { - _, err := th.Store.Channel().SaveMember(&model.ChannelMember{ + _, err := th.Store.Channel().SaveMember(th.Context, &model.ChannelMember{ ChannelId: channelID, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/sqlstore/channel_store.go b/server/channels/store/sqlstore/channel_store.go index d2e65251db..32b30cf51c 100644 --- a/server/channels/store/sqlstore/channel_store.go +++ b/server/channels/store/sqlstore/channel_store.go @@ -1619,7 +1619,7 @@ func (s SqlChannelStore) SaveMultipleMembers(members []*model.ChannelMember) ([] return newMembers, nil } -func (s SqlChannelStore) SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) { +func (s SqlChannelStore) SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) { newMembers, err := s.SaveMultipleMembers([]*model.ChannelMember{member}) if err != nil { return nil, err diff --git a/server/channels/store/sqlstore/integrity_test.go b/server/channels/store/sqlstore/integrity_test.go index 2558079e6c..f9b5095027 100644 --- a/server/channels/store/sqlstore/integrity_test.go +++ b/server/channels/store/sqlstore/integrity_test.go @@ -58,12 +58,12 @@ func createCommand(ss store.Store, userId, teamId string) *model.Command { return cmd } -func createChannelMember(ss store.Store, channelId, userId string) *model.ChannelMember { +func createChannelMember(rctx request.CTX, ss store.Store, channelId, userId string) *model.ChannelMember { m := model.ChannelMember{} m.ChannelId = channelId m.UserId = userId m.NotifyProps = model.GetDefaultChannelNotifyProps() - cm, _ := ss.Channel().SaveMember(&m) + cm, _ := ss.Channel().SaveMember(rctx, &m) return cm } @@ -83,8 +83,8 @@ func createChannelWithCreatorId(ss store.Store, id string) *model.Channel { return createChannel(ss, model.NewId(), id) } -func createChannelMemberWithChannelId(ss store.Store, id string) *model.ChannelMember { - return createChannelMember(ss, id, model.NewId()) +func createChannelMemberWithChannelId(rctx request.CTX, ss store.Store, id string) *model.ChannelMember { + return createChannelMember(rctx, ss, id, model.NewId()) } func createCommandWebhook(ss store.Store, commandId, userId, channelId string) *model.CommandWebhook { @@ -484,7 +484,7 @@ func TestCheckChannelsChannelMembersIntegrity(t *testing.T) { t.Run("should generate a report with one record", func(t *testing.T) { channel := createChannel(ss, model.NewId(), model.NewId()) - member := createChannelMemberWithChannelId(ss, channel.Id) + member := createChannelMemberWithChannelId(rctx, ss, channel.Id) dbmap.Exec(`DELETE FROM Channels Where Id=?`, channel.Id) result := checkChannelsChannelMembersIntegrity(store) require.NoError(t, result.Err) @@ -1110,7 +1110,7 @@ func TestCheckUsersChannelMembersIntegrity(t *testing.T) { t.Run("should generate a report with one record", func(t *testing.T) { user := createUser(ss) channel := createChannelWithCreatorId(ss, user.Id) - member := createChannelMember(ss, channel.Id, user.Id) + member := createChannelMember(rctx, ss, channel.Id, user.Id) dbmap.Exec(`DELETE FROM Users WHERE Id=?`, user.Id) result := checkUsersChannelMembersIntegrity(store) require.NoError(t, result.Err) diff --git a/server/channels/store/store.go b/server/channels/store/store.go index dffce837ee..7c3d8d7b90 100644 --- a/server/channels/store/store.go +++ b/server/channels/store/store.go @@ -219,7 +219,7 @@ type ChannelStore interface { GetChannelsWithTeamDataByIds(channelIds []string, includeDeleted bool) ([]*model.ChannelWithTeamData, error) GetForPost(postID string) (*model.Channel, error) SaveMultipleMembers(members []*model.ChannelMember) ([]*model.ChannelMember, error) - SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) + SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) UpdateMember(ctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) UpdateMultipleMembers(members []*model.ChannelMember) ([]*model.ChannelMember, error) // UpdateMemberNotifyProps patches the notifyProps field with the given props map. diff --git a/server/channels/store/storetest/channel_member_history_store.go b/server/channels/store/storetest/channel_member_history_store.go index 74b548d857..ea6e076f96 100644 --- a/server/channels/store/storetest/channel_member_history_store.go +++ b/server/channels/store/storetest/channel_member_history_store.go @@ -212,7 +212,7 @@ func testGetUsersInChannelAtChannelMembers(t *testing.T, rctx request.CTX, ss st // available in the ChannelMemberHistory table. Instead, we'll fall back to the ChannelMembers table for a rough approximation joinTime := int64(1000) leaveTime := joinTime + 5000 - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/storetest/channel_store.go b/server/channels/store/storetest/channel_store.go index 173d7e4d21..0db8563b85 100644 --- a/server/channels/store/storetest/channel_store.go +++ b/server/channels/store/storetest/channel_store.go @@ -389,7 +389,7 @@ func testGetChannelUnread(t *testing.T, rctx request.CTX, ss store.Store) { require.NoError(t, nErr) cm1 := &model.ChannelMember{ChannelId: c1.Id, UserId: m1.UserId, NotifyProps: notifyPropsModel, MsgCount: 90, MsgCountRoot: 80} - _, err := ss.Channel().SaveMember(cm1) + _, err := ss.Channel().SaveMember(rctx, cm1) require.NoError(t, err) // Setup Channel 2 @@ -398,7 +398,7 @@ func testGetChannelUnread(t *testing.T, rctx request.CTX, ss store.Store) { require.NoError(t, nErr) cm2 := &model.ChannelMember{ChannelId: c2.Id, UserId: m2.UserId, NotifyProps: notifyPropsModel, MsgCount: 90, MsgCountRoot: 90, MentionCount: 5, MentionCountRoot: 1} - _, err = ss.Channel().SaveMember(cm2) + _, err = ss.Channel().SaveMember(rctx, cm2) require.NoError(t, err) // Check for Channel 1 @@ -776,14 +776,14 @@ func testChannelStoreDelete(t *testing.T, rctx request.CTX, ss store.Store) { m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = o2.Id m2.UserId = m1.UserId m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) nErr = ss.Channel().Delete(o1.Id, model.GetMillis()) @@ -1081,14 +1081,14 @@ func testChannelMemberStore(t *testing.T, rctx request.CTX, ss store.Store) { o1.ChannelId = c1.Id o1.UserId = u1.Id o1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, nErr = ss.Channel().SaveMember(&o1) + _, nErr = ss.Channel().SaveMember(rctx, &o1) require.NoError(t, nErr) o2 := model.ChannelMember{} o2.ChannelId = c1.Id o2.UserId = u2.Id o2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, nErr = ss.Channel().SaveMember(&o2) + _, nErr = ss.Channel().SaveMember(rctx, &o2) require.NoError(t, nErr) c1t2, _ := ss.Channel().Get(c1.Id, false) @@ -1130,7 +1130,7 @@ func testChannelMemberStore(t *testing.T, rctx request.CTX, ss store.Store) { member, _ := ss.Channel().GetMember(context.Background(), o1.ChannelId, o1.UserId) require.Equal(t, o1.ChannelId, member.ChannelId, "should have go member") - _, nErr = ss.Channel().SaveMember(&o1) + _, nErr = ss.Channel().SaveMember(rctx, &o1) require.Error(t, nErr, "should have been a duplicate") c1t4, _ := ss.Channel().Get(c1.Id, false) @@ -1144,7 +1144,7 @@ func testChannelSaveMember(t *testing.T, rctx request.CTX, ss store.Store) { t.Run("not valid channel member", func(t *testing.T) { member := &model.ChannelMember{ChannelId: "wrong", UserId: u1.Id, NotifyProps: defaultNotifyProps} - _, nErr := ss.Channel().SaveMember(member) + _, nErr := ss.Channel().SaveMember(rctx, member) require.Error(t, nErr) var appErr *model.AppError require.True(t, errors.As(nErr, &appErr)) @@ -1154,10 +1154,10 @@ func testChannelSaveMember(t *testing.T, rctx request.CTX, ss store.Store) { t.Run("duplicated entries should fail", func(t *testing.T) { channelID1 := model.NewId() m1 := &model.ChannelMember{ChannelId: channelID1, UserId: u1.Id, NotifyProps: defaultNotifyProps} - _, nErr := ss.Channel().SaveMember(m1) + _, nErr := ss.Channel().SaveMember(rctx, m1) require.NoError(t, nErr) m2 := &model.ChannelMember{ChannelId: channelID1, UserId: u1.Id, NotifyProps: defaultNotifyProps} - _, nErr = ss.Channel().SaveMember(m2) + _, nErr = ss.Channel().SaveMember(rctx, m2) require.Error(t, nErr) require.IsType(t, &store.ErrConflict{}, nErr) }) @@ -1167,7 +1167,7 @@ func testChannelSaveMember(t *testing.T, rctx request.CTX, ss store.Store) { props := model.GetDefaultChannelNotifyProps() props["property"] = strings.Repeat("Z", model.ChannelMemberNotifyPropsMaxRunes) member := &model.ChannelMember{ChannelId: channelID, UserId: u1.Id, NotifyProps: props} - _, nErr := ss.Channel().SaveMember(member) + _, nErr := ss.Channel().SaveMember(rctx, member) require.ErrorContains(t, nErr, "channel_member.is_valid.notify_props") }) @@ -1310,7 +1310,7 @@ func testChannelSaveMember(t *testing.T, rctx request.CTX, ss store.Store) { ExplicitRoles: tc.ExplicitRoles, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) defer ss.Channel().RemoveMember(rctx, channel.Id, u1.Id) assert.Equal(t, tc.ExpectedRoles, member.Roles) @@ -1471,7 +1471,7 @@ func testChannelSaveMember(t *testing.T, rctx request.CTX, ss store.Store) { ExplicitRoles: tc.ExplicitRoles, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) defer ss.Channel().RemoveMember(rctx, channel.Id, u1.Id) assert.Equal(t, tc.ExpectedRoles, member.Roles) @@ -1631,7 +1631,7 @@ func testChannelSaveMember(t *testing.T, rctx request.CTX, ss store.Store) { ExplicitRoles: tc.ExplicitRoles, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) defer ss.Channel().RemoveMember(rctx, channel.Id, u1.Id) assert.Equal(t, tc.ExpectedRoles, member.Roles) @@ -2245,7 +2245,7 @@ func testChannelUpdateMember(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u1.Id, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) testCases := []struct { @@ -2408,7 +2408,7 @@ func testChannelUpdateMember(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u1.Id, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) testCases := []struct { @@ -2570,7 +2570,7 @@ func testChannelUpdateMember(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u1.Id, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) testCases := []struct { @@ -3264,7 +3264,7 @@ func testChannelUpdateMemberNotifyProps(t *testing.T, rctx request.CTX, ss store UserId: u1.Id, NotifyProps: defaultNotifyProps, } - member, nErr = ss.Channel().SaveMember(member) + member, nErr = ss.Channel().SaveMember(rctx, member) require.NoError(t, nErr) then := member.LastUpdateAt @@ -3306,19 +3306,19 @@ func testChannelPatchMultipleMembersNotifyProps(t *testing.T, rctx request.CTX, require.NoError(t, err) user2, err := ss.User().Save(&model.User{Username: model.NewId(), Email: MakeEmail()}) require.NoError(t, err) - original1, err := ss.Channel().SaveMember(&model.ChannelMember{ + original1, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: user1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - original2, err := ss.Channel().SaveMember(&model.ChannelMember{ + original2, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: user2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - original3, err := ss.Channel().SaveMember(&model.ChannelMember{ + original3, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: user1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3392,7 +3392,7 @@ func testChannelPatchMultipleMembersNotifyProps(t *testing.T, rctx request.CTX, user, err := ss.User().Save(&model.User{Username: model.NewId(), Email: MakeEmail()}) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3455,7 +3455,7 @@ func testChannelRemoveMember(t *testing.T, rctx request.CTX, ss store.Store) { t.Run("remove existing member from an existing channel", func(t *testing.T) { nErr = ss.Channel().RemoveMember(rctx, channelID, u1.Id) require.NoError(t, nErr) - defer ss.Channel().SaveMember(m1) + defer ss.Channel().SaveMember(rctx, m1) var membersCount int64 membersCount, nErr = ss.Channel().GetMemberCount(channelID, false) require.NoError(t, nErr) @@ -3550,14 +3550,14 @@ func testChannelDeleteMemberStore(t *testing.T, rctx request.CTX, ss store.Store o1.ChannelId = c1.Id o1.UserId = u1.Id o1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, nErr = ss.Channel().SaveMember(&o1) + _, nErr = ss.Channel().SaveMember(rctx, &o1) require.NoError(t, nErr) o2 := model.ChannelMember{} o2.ChannelId = c1.Id o2.UserId = u2.Id o2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, nErr = ss.Channel().SaveMember(&o2) + _, nErr = ss.Channel().SaveMember(rctx, &o2) require.NoError(t, nErr) c1t2, _ := ss.Channel().Get(c1.Id, false) @@ -3613,28 +3613,28 @@ func testChannelStoreGetChannels(t *testing.T, rctx request.CTX, ss store.Store) m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = o1.Id m2.UserId = model.NewId() m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) m3 := model.ChannelMember{} m3.ChannelId = o2.Id m3.UserId = m1.UserId m3.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) m4 := model.ChannelMember{} m4.ChannelId = o3.Id m4.UserId = m1.UserId m4.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m4) + _, err = ss.Channel().SaveMember(rctx, &m4) require.NoError(t, err) list, nErr := ss.Channel().GetChannels(o1.TeamId, m1.UserId, &model.ChannelSearchOpts{ @@ -3790,28 +3790,28 @@ func testChannelStoreGetChannelsByUser(t *testing.T, rctx request.CTX, ss store. m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = o1.Id m2.UserId = model.NewId() m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) m3 := model.ChannelMember{} m3.ChannelId = o2.Id m3.UserId = m1.UserId m3.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) m4 := model.ChannelMember{} m4.ChannelId = o3.Id m4.UserId = m1.UserId m4.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m4) + _, err = ss.Channel().SaveMember(rctx, &m4) require.NoError(t, err) list, nErr := ss.Channel().GetChannelsByUser(m1.UserId, false, 0, -1, "") @@ -4013,14 +4013,14 @@ func testChannelStoreGetMoreChannels(t *testing.T, rctx request.CTX, ss store.St _, nErr := ss.Channel().Save(&o1, -1) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: o1.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: o1.Id, UserId: otherUserId1, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -4037,7 +4037,7 @@ func testChannelStoreGetMoreChannels(t *testing.T, rctx request.CTX, ss store.St _, nErr = ss.Channel().Save(&o2, -1) require.NoError(t, nErr) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: o2.Id, UserId: otherUserId2, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -4075,7 +4075,7 @@ func testChannelStoreGetMoreChannels(t *testing.T, rctx request.CTX, ss store.St _, nErr = ss.Channel().Save(&o5, -1) require.NoError(t, nErr) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: o5.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -4437,21 +4437,21 @@ func testChannelStoreGetChannelCounts(t *testing.T, rctx request.CTX, ss store.S m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = o1.Id m2.UserId = model.NewId() m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) m3 := model.ChannelMember{} m3.ChannelId = o2.Id m3.UserId = model.NewId() m3.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) counts, _ := ss.Channel().GetChannelCounts(o1.TeamId, m1.UserId) @@ -4489,14 +4489,14 @@ func testChannelStoreGetMembersForUser(t *testing.T, rctx request.CTX, ss store. m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = o2.Id m2.UserId = m1.UserId m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) t.Run("with channels", func(t *testing.T) { @@ -4546,7 +4546,7 @@ func testChannelStoreGetMembersForUser(t *testing.T, rctx request.CTX, ss store. SchemeUser: true, } - _, err = ss.Channel().SaveMember(cm) + _, err = ss.Channel().SaveMember(rctx, cm) require.NoError(t, err) } var members model.ChannelMembers @@ -4598,14 +4598,14 @@ func testChannelStoreGetMembersForUserWithPagination(t *testing.T, rctx request. m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = o2.Id m2.UserId = m1.UserId m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) members, err := ss.Channel().GetMembersForUserWithPagination(m1.UserId, 0, 2) @@ -4865,7 +4865,7 @@ func testChannelStoreUpdateLastViewedAt(t *testing.T, rctx request.CTX, ss store m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) o2 := model.Channel{} @@ -4883,7 +4883,7 @@ func testChannelStoreUpdateLastViewedAt(t *testing.T, rctx request.CTX, ss store m2.ChannelId = o2.Id m2.UserId = m1.UserId m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) var times map[string]int64 @@ -4925,7 +4925,7 @@ func testChannelStoreIncrementMentionCount(t *testing.T, rctx request.CTX, ss st m1.ChannelId = o1.Id m1.UserId = model.NewId() m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) err = ss.Channel().IncrementMentionCount(m1.ChannelId, []string{m1.UserId}, false, false) @@ -4958,7 +4958,7 @@ func testUpdateChannelMember(t *testing.T, rctx request.CTX, ss store.Store) { UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(m1) + _, err := ss.Channel().SaveMember(rctx, m1) require.NoError(t, err) m1.NotifyProps["test"] = "sometext" @@ -4996,7 +4996,7 @@ func testGetMember(t *testing.T, rctx request.CTX, ss store.Store) { UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(m1) + _, err := ss.Channel().SaveMember(rctx, m1) require.NoError(t, err) m2 := &model.ChannelMember{ @@ -5004,7 +5004,7 @@ func testGetMember(t *testing.T, rctx request.CTX, ss store.Store) { UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(m2) + _, err = ss.Channel().SaveMember(rctx, m2) require.NoError(t, err) _, err = ss.Channel().GetMember(context.Background(), model.NewId(), userId) @@ -5061,7 +5061,7 @@ func testGetMemberLastViewedAt(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), LastViewedAt: int64(100), } - _, err := ss.Channel().SaveMember(m1) + _, err := ss.Channel().SaveMember(rctx, m1) require.NoError(t, err) m2 := &model.ChannelMember{ @@ -5070,7 +5070,7 @@ func testGetMemberLastViewedAt(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), LastViewedAt: int64(200), } - _, err = ss.Channel().SaveMember(m2) + _, err = ss.Channel().SaveMember(rctx, m2) require.NoError(t, err) _, err = ss.Channel().GetMemberLastViewedAt(context.Background(), model.NewId(), userId) @@ -5101,7 +5101,7 @@ func testChannelStoreGetMemberForPost(t *testing.T, rctx request.CTX, ss store.S o1, nErr := ss.Channel().Save(ch, -1) require.NoError(t, nErr) - m1, err := ss.Channel().SaveMember(&model.ChannelMember{ + m1, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: o1.Id, UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -5158,7 +5158,7 @@ func testGetMemberCount(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m1) + _, nErr = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, nErr) count, channelErr := ss.Channel().GetMemberCount(c1.Id, false) @@ -5179,7 +5179,7 @@ func testGetMemberCount(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m2) + _, nErr = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, nErr) count, channelErr = ss.Channel().GetMemberCount(c1.Id, false) @@ -5201,7 +5201,7 @@ func testGetMemberCount(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m3) + _, nErr = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, nErr) count, channelErr = ss.Channel().GetMemberCount(c1.Id, false) @@ -5223,7 +5223,7 @@ func testGetMemberCount(t *testing.T, rctx request.CTX, ss store.Store) { UserId: u4.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m4) + _, nErr = ss.Channel().SaveMember(rctx, &m4) require.NoError(t, nErr) count, nErr = ss.Channel().GetMemberCount(c1.Id, false) @@ -5267,7 +5267,7 @@ func testGetMemberCountsByGroup(t *testing.T, rctx request.CTX, ss store.Store) UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m1) + _, nErr = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, nErr) t.Run("empty slice for channel with no groups", func(t *testing.T) { @@ -5338,7 +5338,7 @@ func testGetMemberCountsByGroup(t *testing.T, rctx request.CTX, ss store.Store) UserId: u.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m) + _, nErr = ss.Channel().SaveMember(rctx, &m) require.NoError(t, nErr) _, err = ss.Group().UpsertMember(g2.Id, u.Id) @@ -5392,7 +5392,7 @@ func testGetMemberCountsByGroup(t *testing.T, rctx request.CTX, ss store.Store) UserId: u.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, nErr = ss.Channel().SaveMember(&m) + _, nErr = ss.Channel().SaveMember(rctx, &m) require.NoError(t, nErr) _, err = ss.Group().UpsertMember(g3.Id, u.Id) @@ -5484,7 +5484,7 @@ func testGetGuestCount(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), SchemeGuest: false, } - _, nErr = ss.Channel().SaveMember(&m1) + _, nErr = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, nErr) count, channelErr := ss.Channel().GetGuestCount(c1.Id, false) @@ -5509,7 +5509,7 @@ func testGetGuestCount(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), SchemeGuest: true, } - _, nErr = ss.Channel().SaveMember(&m2) + _, nErr = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, nErr) count, channelErr := ss.Channel().GetGuestCount(c1.Id, false) @@ -5534,7 +5534,7 @@ func testGetGuestCount(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), SchemeGuest: true, } - _, nErr = ss.Channel().SaveMember(&m3) + _, nErr = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, nErr) count, channelErr := ss.Channel().GetGuestCount(c1.Id, false) @@ -5559,7 +5559,7 @@ func testGetGuestCount(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), SchemeGuest: true, } - _, nErr = ss.Channel().SaveMember(&m4) + _, nErr = ss.Channel().SaveMember(rctx, &m4) require.NoError(t, nErr) count, channelErr := ss.Channel().GetGuestCount(c1.Id, false) @@ -5586,7 +5586,7 @@ func testChannelStoreSearchMore(t *testing.T, rctx request.CTX, ss store.Store) UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{ @@ -5594,7 +5594,7 @@ func testChannelStoreSearchMore(t *testing.T, rctx request.CTX, ss store.Store) UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) o2 := model.Channel{ @@ -5611,7 +5611,7 @@ func testChannelStoreSearchMore(t *testing.T, rctx request.CTX, ss store.Store) UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) o3 := model.Channel{ @@ -5805,7 +5805,7 @@ func testChannelStoreSearchInTeam(t *testing.T, rctx request.CTX, ss store.Store UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{ @@ -5813,7 +5813,7 @@ func testChannelStoreSearchInTeam(t *testing.T, rctx request.CTX, ss store.Store UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) m3 := model.ChannelMember{ @@ -5821,7 +5821,7 @@ func testChannelStoreSearchInTeam(t *testing.T, rctx request.CTX, ss store.Store UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) o3 := model.Channel{ @@ -5847,7 +5847,7 @@ func testChannelStoreSearchInTeam(t *testing.T, rctx request.CTX, ss store.Store UserId: m3.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(m4) + _, err = ss.Channel().SaveMember(rctx, m4) require.NoError(t, err) o5 := model.Channel{ @@ -5891,7 +5891,7 @@ func testChannelStoreSearchInTeam(t *testing.T, rctx request.CTX, ss store.Store UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(m5) + _, err = ss.Channel().SaveMember(rctx, m5) require.NoError(t, err) o9 := model.Channel{ @@ -6050,7 +6050,7 @@ func testAutocomplete(t *testing.T, rctx request.CTX, ss store.Store, s SqlStore UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{ @@ -6058,7 +6058,7 @@ func testAutocomplete(t *testing.T, rctx request.CTX, ss store.Store, s SqlStore UserId: m1.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) tm1 := &model.TeamMember{TeamId: teamID, UserId: m1.UserId} @@ -6074,7 +6074,7 @@ func testAutocomplete(t *testing.T, rctx request.CTX, ss store.Store, s SqlStore UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) tm3 := &model.TeamMember{TeamId: otherTeamID, UserId: m3.UserId} @@ -6108,7 +6108,7 @@ func testAutocomplete(t *testing.T, rctx request.CTX, ss store.Store, s SqlStore UserId: m3.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(m4) + _, err = ss.Channel().SaveMember(rctx, m4) require.NoError(t, err) m5 := &model.ChannelMember{ @@ -6116,7 +6116,7 @@ func testAutocomplete(t *testing.T, rctx request.CTX, ss store.Store, s SqlStore UserId: m1.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(m5) + _, err = ss.Channel().SaveMember(rctx, m5) require.NoError(t, err) t3 := &model.Team{ @@ -6143,7 +6143,7 @@ func testAutocomplete(t *testing.T, rctx request.CTX, ss store.Store, s SqlStore UserId: m1.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m6) + _, err = ss.Channel().SaveMember(rctx, &m6) require.NoError(t, err) tm5 := &model.TeamMember{TeamId: leftTeamId, UserId: m1.UserId} @@ -6262,7 +6262,7 @@ func testChannelStoreSearchForUserInTeam(t *testing.T, rctx request.CTX, ss stor // add the user to the first 3 channels and the other team channel for _, c := range []model.Channel{o1, o2, o3, o5} { - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -6291,7 +6291,7 @@ func testChannelStoreSearchForUserInTeam(t *testing.T, rctx request.CTX, ss stor }) t.Run("After adding user to channel 4, search for dev, get channels 1, 2, 3 and 4", func(t *testing.T) { - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: o4.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -6357,7 +6357,7 @@ func testChannelStoreSearchAllChannels(t *testing.T, rctx request.CTX, ss store. UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{ @@ -6365,7 +6365,7 @@ func testChannelStoreSearchAllChannels(t *testing.T, rctx request.CTX, ss store. UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) m3 := model.ChannelMember{ @@ -6373,7 +6373,7 @@ func testChannelStoreSearchAllChannels(t *testing.T, rctx request.CTX, ss store. UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) o3 := model.Channel{ @@ -6583,7 +6583,7 @@ func testChannelStoreGetMembersByIds(t *testing.T, rctx request.CTX, ss store.St require.NoError(t, nErr) m1 := &model.ChannelMember{ChannelId: o1.Id, UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps()} - _, err := ss.Channel().SaveMember(m1) + _, err := ss.Channel().SaveMember(rctx, m1) require.NoError(t, err) var members model.ChannelMembers @@ -6595,7 +6595,7 @@ func testChannelStoreGetMembersByIds(t *testing.T, rctx request.CTX, ss store.St require.Equal(t, m1.UserId, rm1.UserId, "bad user id") m2 := &model.ChannelMember{ChannelId: o1.Id, UserId: model.NewId(), NotifyProps: model.GetDefaultChannelNotifyProps()} - _, err = ss.Channel().SaveMember(m2) + _, err = ss.Channel().SaveMember(rctx, m2) require.NoError(t, err) members, nErr = ss.Channel().GetMembersByIds(m1.ChannelId, []string{m1.UserId, m2.UserId, model.NewId()}) @@ -6627,14 +6627,14 @@ func testChannelStoreGetMembersByChannelIds(t *testing.T, rctx request.CTX, ss s }, -1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -6690,14 +6690,14 @@ func testChannelStoreGetMembersInfoByChannelIds(t *testing.T, rctx request.CTX, }, -1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: u.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: u.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -6761,7 +6761,7 @@ func testChannelStoreSearchGroupChannels(t *testing.T, rctx request.CTX, ss stor require.NoError(t, nErr) for _, userId := range userIds { - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: gc1.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -6778,7 +6778,7 @@ func testChannelStoreSearchGroupChannels(t *testing.T, rctx request.CTX, ss stor require.NoError(t, nErr) for _, userId := range userIds { - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: gc2.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -6795,7 +6795,7 @@ func testChannelStoreSearchGroupChannels(t *testing.T, rctx request.CTX, ss stor require.NoError(t, nErr) for _, userId := range userIds { - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: gc3.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -7220,9 +7220,9 @@ func testChannelStoreMigrateChannelMembers(t *testing.T, rctx request.CTX, ss st NotifyProps: model.GetDefaultChannelNotifyProps(), } - cm1, _ = ss.Channel().SaveMember(cm1) - cm2, _ = ss.Channel().SaveMember(cm2) - cm3, _ = ss.Channel().SaveMember(cm3) + cm1, _ = ss.Channel().SaveMember(rctx, cm1) + cm2, _ = ss.Channel().SaveMember(rctx, cm2) + cm3, _ = ss.Channel().SaveMember(rctx, cm3) lastDoneChannelId := strings.Repeat("0", 26) lastDoneUserId := strings.Repeat("0", 26) @@ -7339,13 +7339,13 @@ func testChannelStoreClearAllCustomRoleAssignments(t *testing.T, rctx request.CT ExplicitRoles: "custom_only", } - _, err := ss.Channel().SaveMember(m1) + _, err := ss.Channel().SaveMember(rctx, m1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(m2) + _, err = ss.Channel().SaveMember(rctx, m2) require.NoError(t, err) - _, err = ss.Channel().SaveMember(m3) + _, err = ss.Channel().SaveMember(rctx, m3) require.NoError(t, err) - _, err = ss.Channel().SaveMember(m4) + _, err = ss.Channel().SaveMember(rctx, m4) require.NoError(t, err) require.NoError(t, ss.Channel().ClearAllCustomRoleAssignments()) @@ -7592,14 +7592,14 @@ func testChannelStoreGetChannelMembersForExport(t *testing.T, rctx request.CTX, m1.ChannelId = c1.Id m1.UserId = u1.Id m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = c2.Id m2.UserId = u1.Id m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) d1, err := ss.Channel().GetChannelMembersForExport(u1.Id, t1.Id, false) @@ -7653,21 +7653,21 @@ func testChannelStoreRemoveAllDeactivatedMembers(t *testing.T, rctx request.CTX, m1.ChannelId = c1.Id m1.UserId = u1.Id m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) m2 := model.ChannelMember{} m2.ChannelId = c1.Id m2.UserId = u2.Id m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m2) + _, err = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, err) m3 := model.ChannelMember{} m3.ChannelId = c1.Id m3.UserId = u3.Id m3.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(&m3) + _, err = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, err) // Get all the channel members. Check there are 3. @@ -8067,7 +8067,7 @@ func testGetChannelsWithUnreadsAndWithMentions(t *testing.T, rctx request.CTX, s if withMentions { m1.MentionCount = 5 } - _, err := ss.Channel().SaveMember(&m1) + _, err := ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) return o1, m1 diff --git a/server/channels/store/storetest/channel_store_categories.go b/server/channels/store/storetest/channel_store_categories.go index 41ad719f1d..9d5ae2a2e5 100644 --- a/server/channels/store/storetest/channel_store_categories.go +++ b/server/channels/store/storetest/channel_store_categories.go @@ -199,7 +199,7 @@ func testCreateInitialSidebarCategories(t *testing.T, rctx request.CTX, ss store Name: "channel1", }, 1000) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -212,7 +212,7 @@ func testCreateInitialSidebarCategories(t *testing.T, rctx request.CTX, ss store Name: "channel2", }, 1000) require.NoError(t, nErr) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -261,7 +261,7 @@ func testCreateInitialSidebarCategories(t *testing.T, rctx request.CTX, ss store DisplayName: "zebra", }, 1000) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -275,7 +275,7 @@ func testCreateInitialSidebarCategories(t *testing.T, rctx request.CTX, ss store DisplayName: "aardvark", }, 1000) require.NoError(t, nErr) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -398,7 +398,7 @@ func testCreateInitialSidebarCategories(t *testing.T, rctx request.CTX, ss store Name: "channel1", }, 1000) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: userId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -728,7 +728,7 @@ func testGetSidebarCategory(t *testing.T, rctx request.CTX, ss store.Store, s Sq Type: model.ChannelTypePrivate, }, 10) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -742,7 +742,7 @@ func testGetSidebarCategory(t *testing.T, rctx request.CTX, ss store.Store, s Sq Type: model.ChannelTypeOpen, }, 10) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -797,7 +797,7 @@ func testGetSidebarCategory(t *testing.T, rctx request.CTX, ss store.Store, s Sq require.NoError(t, nErr) defer ss.Channel().PermanentDelete(rctx, channel1.Id) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -841,7 +841,7 @@ func testGetSidebarCategory(t *testing.T, rctx request.CTX, ss store.Store, s Sq Type: model.ChannelTypePrivate, }, 10) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -855,7 +855,7 @@ func testGetSidebarCategory(t *testing.T, rctx request.CTX, ss store.Store, s Sq Type: model.ChannelTypeOpen, }, 10) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -951,7 +951,7 @@ func testGetSidebarCategory(t *testing.T, rctx request.CTX, ss store.Store, s Sq }, 10) require.NoError(t, nErr) defer ss.Channel().PermanentDelete(rctx, gmChannel.Id) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: gmChannel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1299,7 +1299,7 @@ func testUpdateSidebarCategories(t *testing.T, rctx request.CTX, ss store.Store) TeamId: team.Id, }, 10) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1559,13 +1559,13 @@ func testUpdateSidebarCategories(t *testing.T, rctx request.CTX, ss store.Store) TeamId: team.Id, }, 10) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId2, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1672,7 +1672,7 @@ func testUpdateSidebarCategories(t *testing.T, rctx request.CTX, ss store.Store) TeamId: team.Id, }, 10) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1840,7 +1840,7 @@ func testUpdateSidebarCategories(t *testing.T, rctx request.CTX, ss store.Store) TeamId: team.Id, }, 10) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1908,7 +1908,7 @@ func testUpdateSidebarCategories(t *testing.T, rctx request.CTX, ss store.Store) TeamId: team.Id, }, 10) require.NoError(t, nErr) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userId, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -2359,7 +2359,7 @@ func testSidebarCategoryDeadlock(t *testing.T, rctx request.CTX, ss store.Store) TeamId: team.Id, }, 10) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: userID, ChannelId: channel.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/storetest/draft_store.go b/server/channels/store/storetest/draft_store.go index 83ff14b7e9..6ab7a383cd 100644 --- a/server/channels/store/storetest/draft_store.go +++ b/server/channels/store/storetest/draft_store.go @@ -51,10 +51,10 @@ func testSaveDraft(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(member1) + _, err := ss.Channel().SaveMember(rctx, member1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(member2) + _, err = ss.Channel().SaveMember(rctx, member2) require.NoError(t, err) draft1 := &model.Draft{ @@ -107,7 +107,7 @@ func testUpdateDraft(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(member) + _, err := ss.Channel().SaveMember(rctx, member) require.NoError(t, err) t.Run("update drafts", func(t *testing.T) { @@ -173,10 +173,10 @@ func testDeleteDraft(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(member1) + _, err := ss.Channel().SaveMember(rctx, member1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(member2) + _, err = ss.Channel().SaveMember(rctx, member2) require.NoError(t, err) draft1 := &model.Draft{ @@ -242,10 +242,10 @@ func testGetDraft(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(member1) + _, err := ss.Channel().SaveMember(rctx, member1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(member2) + _, err = ss.Channel().SaveMember(rctx, member2) require.NoError(t, err) draft1 := &model.Draft{ @@ -307,10 +307,10 @@ func testGetDraftsForUser(t *testing.T, rctx request.CTX, ss store.Store) { NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err := ss.Channel().SaveMember(member1) + _, err := ss.Channel().SaveMember(rctx, member1) require.NoError(t, err) - _, err = ss.Channel().SaveMember(member2) + _, err = ss.Channel().SaveMember(rctx, member2) require.NoError(t, err) draft1 := &model.Draft{ @@ -935,14 +935,14 @@ func testDeleteDraftsAssociatedWithPost(t *testing.T, rctx request.CTX, ss store Id: model.NewId(), } - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: user1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: user2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/storetest/group_store.go b/server/channels/store/storetest/group_store.go index 0f04a9797b..eeccaefb00 100644 --- a/server/channels/store/storetest/group_store.go +++ b/server/channels/store/storetest/group_store.go @@ -1193,7 +1193,7 @@ func testGroupGetMemberUsersNotInChannel(t *testing.T, rctx request.CTX, ss stor SchemeAdmin: false, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(cm1) + _, err = ss.Channel().SaveMember(rctx, cm1) require.NoError(t, err) // returns both members not yet added to channel @@ -1218,9 +1218,9 @@ func testGroupGetMemberUsersNotInChannel(t *testing.T, rctx request.CTX, ss stor NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(cm2) + _, err = ss.Channel().SaveMember(rctx, cm2) require.NoError(t, err) - _, err = ss.Channel().SaveMember(cm3) + _, err = ss.Channel().SaveMember(rctx, cm3) require.NoError(t, err) // returns none when all members have been added to team and channel @@ -2541,7 +2541,7 @@ func testChannelMembersToRemoveSingleChannel(t *testing.T, rctx request.CTX, ss require.NoError(t, nErr) for _, user := range []*model.User{user1, user2} { - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel1.Id, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -2549,7 +2549,7 @@ func testChannelMembersToRemoveSingleChannel(t *testing.T, rctx request.CTX, ss require.NoError(t, nErr) } - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel2.Id, UserId: user3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -2713,7 +2713,7 @@ func pendingMemberRemovalsDataSetup(t *testing.T, rctx request.CTX, ss store.Sto } for _, item := range userIDChannelIDs { - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: item[0], ChannelId: item[1], NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3639,7 +3639,7 @@ func testGetGroups(t *testing.T, rctx request.CTX, ss store.Store) { UserId: user1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), } - _, err = ss.Channel().SaveMember(&m1) + _, err = ss.Channel().SaveMember(rctx, &m1) require.NoError(t, err) user2.DeleteAt = 1 @@ -4177,7 +4177,7 @@ func testChannelMembersMinusGroupMembers(t *testing.T, rctx request.CTX, ss stor users = append(users, user) trueOrFalse := int(math.Mod(float64(i), 2)) == 0 - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: user.Id, SchemeUser: trueOrFalse, @@ -4194,7 +4194,7 @@ func testChannelMembersMinusGroupMembers(t *testing.T, rctx request.CTX, ss stor }) require.NoError(t, err) users = append(users, user) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: user.Id, SchemeUser: true, @@ -4882,7 +4882,7 @@ func groupTestpUpdateMembersRoleChannel(t *testing.T, rctx request.CTX, ss store require.NoError(t, err) for _, user := range []*model.User{user1, user2, user3} { - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -4890,7 +4890,7 @@ func groupTestpUpdateMembersRoleChannel(t *testing.T, rctx request.CTX, ss store require.NoError(t, err) } - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: user4.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/storetest/mocks/ChannelStore.go b/server/channels/store/storetest/mocks/ChannelStore.go index 80dc1c37ba..18ec1542fc 100644 --- a/server/channels/store/storetest/mocks/ChannelStore.go +++ b/server/channels/store/storetest/mocks/ChannelStore.go @@ -2147,25 +2147,25 @@ func (_m *ChannelStore) SaveDirectChannel(ctx request.CTX, channel *model.Channe return r0, r1 } -// SaveMember provides a mock function with given fields: member -func (_m *ChannelStore) SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) { - ret := _m.Called(member) +// SaveMember provides a mock function with given fields: rctx, member +func (_m *ChannelStore) SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) { + ret := _m.Called(rctx, member) var r0 *model.ChannelMember var r1 error - if rf, ok := ret.Get(0).(func(*model.ChannelMember) (*model.ChannelMember, error)); ok { - return rf(member) + if rf, ok := ret.Get(0).(func(request.CTX, *model.ChannelMember) (*model.ChannelMember, error)); ok { + return rf(rctx, member) } - if rf, ok := ret.Get(0).(func(*model.ChannelMember) *model.ChannelMember); ok { - r0 = rf(member) + if rf, ok := ret.Get(0).(func(request.CTX, *model.ChannelMember) *model.ChannelMember); ok { + r0 = rf(rctx, member) } else { if ret.Get(0) != nil { r0 = ret.Get(0).(*model.ChannelMember) } } - if rf, ok := ret.Get(1).(func(*model.ChannelMember) error); ok { - r1 = rf(member) + if rf, ok := ret.Get(1).(func(request.CTX, *model.ChannelMember) error); ok { + r1 = rf(rctx, member) } else { r1 = ret.Error(1) } diff --git a/server/channels/store/storetest/post_store.go b/server/channels/store/storetest/post_store.go index 646dc0bbbd..43f9099f5f 100644 --- a/server/channels/store/storetest/post_store.go +++ b/server/channels/store/storetest/post_store.go @@ -3041,7 +3041,7 @@ func testPostStoreGetFlaggedPostsForTeam(t *testing.T, rctx request.CTX, ss stor m0.ChannelId = c1.Id m0.UserId = o1.UserId m0.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(m0) + _, err = ss.Channel().SaveMember(rctx, m0) require.NoError(t, err) teamId := model.NewId() @@ -3278,7 +3278,7 @@ func testPostStoreGetFlaggedPosts(t *testing.T, rctx request.CTX, ss store.Store m0.ChannelId = o1.ChannelId m0.UserId = o1.UserId m0.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(m0) + _, err = ss.Channel().SaveMember(rctx, m0) require.NoError(t, err) r1, err := ss.Post().GetFlaggedPosts(o1.UserId, 0, 2) @@ -3443,14 +3443,14 @@ func testPostStoreGetFlaggedPostsForChannel(t *testing.T, rctx request.CTX, ss s m1.ChannelId = o1.ChannelId m1.UserId = o1.UserId m1.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(m1) + _, err = ss.Channel().SaveMember(rctx, m1) require.NoError(t, err) m2 := &model.ChannelMember{} m2.ChannelId = o4.ChannelId m2.UserId = o1.UserId m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, err = ss.Channel().SaveMember(m2) + _, err = ss.Channel().SaveMember(rctx, m2) require.NoError(t, err) r, err := ss.Post().GetFlaggedPostsForChannel(o1.UserId, o1.ChannelId, 0, 10) diff --git a/server/channels/store/storetest/remote_cluster_store.go b/server/channels/store/storetest/remote_cluster_store.go index 228f5748df..a930a827a2 100644 --- a/server/channels/store/storetest/remote_cluster_store.go +++ b/server/channels/store/storetest/remote_cluster_store.go @@ -333,13 +333,13 @@ func testRemoteClusterGetAllInChannel(t *testing.T, rctx request.CTX, ss store.S userId := model.NewId() - channel1, err := createTestChannel(ss, "channel_1") + channel1, err := createTestChannel(ss, rctx, "channel_1") require.NoError(t, err) - channel2, err := createTestChannel(ss, "channel_2") + channel2, err := createTestChannel(ss, rctx, "channel_2") require.NoError(t, err) - channel3, err := createTestChannel(ss, "channel_3") + channel3, err := createTestChannel(ss, rctx, "channel_3") require.NoError(t, err) // Create shared channels @@ -442,13 +442,13 @@ func testRemoteClusterGetAllNotInChannel(t *testing.T, rctx request.CTX, ss stor userId := model.NewId() - channel1, err := createTestChannel(ss, "channel_1") + channel1, err := createTestChannel(ss, rctx, "channel_1") require.NoError(t, err) - channel2, err := createTestChannel(ss, "channel_2") + channel2, err := createTestChannel(ss, rctx, "channel_2") require.NoError(t, err) - channel3, err := createTestChannel(ss, "channel_3") + channel3, err := createTestChannel(ss, rctx, "channel_3") require.NoError(t, err) // Create shared channels diff --git a/server/channels/store/storetest/retention_policy_store.go b/server/channels/store/storetest/retention_policy_store.go index ca908dbe47..040fc04047 100644 --- a/server/channels/store/storetest/retention_policy_store.go +++ b/server/channels/store/storetest/retention_policy_store.go @@ -643,7 +643,7 @@ func testRetentionPolicyStoreGetPoliciesForUser(t *testing.T, rctx request.CTX, require.NoError(t, err) } for _, channelID := range channelIDs { - _, err := ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channelID, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channelID, UserId: user.Id, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, err) } // Teams diff --git a/server/channels/store/storetest/shared_channel_store.go b/server/channels/store/storetest/shared_channel_store.go index de14d3e46f..713674b7fa 100644 --- a/server/channels/store/storetest/shared_channel_store.go +++ b/server/channels/store/storetest/shared_channel_store.go @@ -48,7 +48,7 @@ func TestSharedChannelStore(t *testing.T, rctx request.CTX, ss store.Store, s Sq func testSaveSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { t.Run("Save shared channel (home)", func(t *testing.T) { - channel, err := createTestChannel(ss, "test_save") + channel, err := createTestChannel(ss, rctx, "test_save") require.NoError(t, err) sc := &model.SharedChannel{ @@ -73,7 +73,7 @@ func testSaveSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { }) t.Run("Save shared channel (remote)", func(t *testing.T) { - channel, err := createTestChannel(ss, "test_save2") + channel, err := createTestChannel(ss, rctx, "test_save2") require.NoError(t, err) sc := &model.SharedChannel{ @@ -125,7 +125,7 @@ func testSaveSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { } func testGetSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_get") + channel, err := createTestChannel(ss, rctx, "test_get") require.NoError(t, err) sc := &model.SharedChannel{ @@ -156,7 +156,7 @@ func testGetSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { } func testHasSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_get") + channel, err := createTestChannel(ss, rctx, "test_get") require.NoError(t, err) sc := &model.SharedChannel{ @@ -206,7 +206,7 @@ func testGetSharedChannels(t *testing.T, rctx request.CTX, ss store.Store) { } for i, sc := range data { - channel, err := createTestChannelWithUser(ss, "test_get2_"+strconv.Itoa(i), user) + channel, err := createTestChannelWithUser(ss, rctx, "test_get2_"+strconv.Itoa(i), user) require.NoError(t, err) sc.ChannelId = channel.Id @@ -328,7 +328,7 @@ func testGetSharedChannels(t *testing.T, rctx request.CTX, ss store.Store) { } func testUpdateSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_update") + channel, err := createTestChannel(ss, rctx, "test_update") require.NoError(t, err) sc := &model.SharedChannel{ @@ -372,7 +372,7 @@ func testUpdateSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { } func testDeleteSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_delete") + channel, err := createTestChannel(ss, rctx, "test_delete") require.NoError(t, err) sc := &model.SharedChannel{ @@ -426,7 +426,7 @@ func testDeleteSharedChannel(t *testing.T, rctx request.CTX, ss store.Store) { func testSaveSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Store) { t.Run("Save shared channel remote", func(t *testing.T) { - channel, err := createTestChannel(ss, "test_save_remote") + channel, err := createTestChannel(ss, rctx, "test_save_remote") require.NoError(t, err) remote := &model.SharedChannelRemote{ @@ -467,7 +467,7 @@ func testSaveSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Store) func testUpdateSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Store) { t.Run("Update shared channel remote", func(t *testing.T) { - channel, err := createTestChannel(ss, "test_update_remote") + channel, err := createTestChannel(ss, rctx, "test_update_remote") require.NoError(t, err) remote := &model.SharedChannelRemote{ @@ -513,7 +513,7 @@ func testUpdateSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Stor } func testGetSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_remote_get") + channel, err := createTestChannel(ss, rctx, "test_remote_get") require.NoError(t, err) remote := &model.SharedChannelRemote{ @@ -543,7 +543,7 @@ func testGetSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Store) } func testGetSharedChannelRemoteByIds(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_remote_get_by_ids") + channel, err := createTestChannel(ss, rctx, "test_remote_get_by_ids") require.NoError(t, err) remote := &model.SharedChannelRemote{ @@ -573,7 +573,7 @@ func testGetSharedChannelRemoteByIds(t *testing.T, rctx request.CTX, ss store.St } func testGetSharedChannelRemotes(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_remotes_get2") + channel, err := createTestChannel(ss, rctx, "test_remotes_get2") require.NoError(t, err) creator := model.NewId() @@ -590,7 +590,7 @@ func testGetSharedChannelRemotes(t *testing.T, rctx request.CTX, ss store.Store) for i, r := range data { if r.ChannelId == "" { - c, err := createTestChannel(ss, "test_remotes_get2_"+strconv.Itoa(i)) + c, err := createTestChannel(ss, rctx, "test_remotes_get2_"+strconv.Itoa(i)) require.NoError(t, err) r.ChannelId = c.Id } @@ -656,7 +656,7 @@ func testGetSharedChannelRemotes(t *testing.T, rctx request.CTX, ss store.Store) } func testHasRemote(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_remotes_get2") + channel, err := createTestChannel(ss, rctx, "test_remotes_get2") require.NoError(t, err) remote1 := model.NewId() @@ -699,7 +699,7 @@ func testHasRemote(t *testing.T, rctx request.CTX, ss store.Store) { func testGetRemoteForUser(t *testing.T, rctx request.CTX, ss store.Store) { // add remotes, and users to simulated shared channels. teamId := model.NewId() - channel, err := createSharedTestChannel(ss, "share_test_channel", true, nil) + channel, err := createSharedTestChannel(ss, rctx, "share_test_channel", true, nil) require.NoError(t, err) remotes := []*model.RemoteCluster{ {RemoteId: model.NewId(), SiteURL: model.NewId(), CreatorId: model.NewId(), RemoteTeamId: teamId, Name: "Test_Remote_1"}, @@ -723,7 +723,7 @@ func testGetRemoteForUser(t *testing.T, rctx request.CTX, ss store.Store) { SchemeGuest: false, SchemeUser: true, } - _, err := ss.Channel().SaveMember(member) + _, err := ss.Channel().SaveMember(rctx, member) require.NoError(t, err) } @@ -753,7 +753,7 @@ func testGetRemoteForUser(t *testing.T, rctx request.CTX, ss store.Store) { } func testUpdateSharedChannelRemoteCursor(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_remote_update_next_sync_at") + channel, err := createTestChannel(ss, rctx, "test_remote_update_next_sync_at") require.NoError(t, err) remote := &model.SharedChannelRemote{ @@ -814,7 +814,7 @@ func testUpdateSharedChannelRemoteCursor(t *testing.T, rctx request.CTX, ss stor } func testDeleteSharedChannelRemote(t *testing.T, rctx request.CTX, ss store.Store) { - channel, err := createTestChannel(ss, "test_remote_delete") + channel, err := createTestChannel(ss, rctx, "test_remote_delete") require.NoError(t, err) remote := &model.SharedChannelRemote{ @@ -851,17 +851,17 @@ func createTestUser(ss store.Store, username string) (*model.User, error) { return ss.User().Save(user) } -func createTestChannel(ss store.Store, name string) (*model.Channel, error) { - channel, err := createSharedTestChannel(ss, name, false, nil) +func createTestChannel(ss store.Store, rctx request.CTX, name string) (*model.Channel, error) { + channel, err := createSharedTestChannel(ss, rctx, name, false, nil) return channel, err } -func createTestChannelWithUser(ss store.Store, name string, member *model.User) (*model.Channel, error) { - channel, err := createSharedTestChannel(ss, name, false, member) +func createTestChannelWithUser(ss store.Store, rctx request.CTX, name string, member *model.User) (*model.Channel, error) { + channel, err := createSharedTestChannel(ss, rctx, name, false, member) return channel, err } -func createSharedTestChannel(ss store.Store, name string, shared bool, member *model.User) (*model.Channel, error) { +func createSharedTestChannel(ss store.Store, rctx request.CTX, name string, shared bool, member *model.User) (*model.Channel, error) { channel := &model.Channel{ TeamId: model.NewId(), Type: model.ChannelTypeOpen, @@ -886,7 +886,7 @@ func createSharedTestChannel(ss store.Store, name string, shared bool, member *m SchemeUser: !member.IsGuest(), } - _, err = ss.Channel().SaveMember(newMember) + _, err = ss.Channel().SaveMember(rctx, newMember) if err != nil { return nil, err } diff --git a/server/channels/store/storetest/team_store.go b/server/channels/store/storetest/team_store.go index 0390108dad..e9ada1f357 100644 --- a/server/channels/store/storetest/team_store.go +++ b/server/channels/store/storetest/team_store.go @@ -3130,10 +3130,10 @@ func testGetChannelUnreadsForAllTeams(t *testing.T, rctx request.CTX, ss store.S require.NoError(t, nErr) cm1 := &model.ChannelMember{ChannelId: c1.Id, UserId: m1.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), MsgCount: 90} - _, err := ss.Channel().SaveMember(cm1) + _, err := ss.Channel().SaveMember(rctx, cm1) require.NoError(t, err) cm2 := &model.ChannelMember{ChannelId: c2.Id, UserId: m2.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), MsgCount: 90} - _, err = ss.Channel().SaveMember(cm2) + _, err = ss.Channel().SaveMember(rctx, cm2) require.NoError(t, err) ms1, nErr := ss.Team().GetChannelUnreadsForAllTeams("", uid) @@ -3184,10 +3184,10 @@ func testGetChannelUnreadsForTeam(t *testing.T, rctx request.CTX, ss store.Store require.NoError(t, nErr) cm1 := &model.ChannelMember{ChannelId: c1.Id, UserId: m1.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), MsgCount: 90} - _, nErr = ss.Channel().SaveMember(cm1) + _, nErr = ss.Channel().SaveMember(rctx, cm1) require.NoError(t, nErr) cm2 := &model.ChannelMember{ChannelId: c2.Id, UserId: m1.UserId, NotifyProps: model.GetDefaultChannelNotifyProps(), MsgCount: 90} - _, nErr = ss.Channel().SaveMember(cm2) + _, nErr = ss.Channel().SaveMember(rctx, cm2) require.NoError(t, nErr) ms, err := ss.Team().GetChannelUnreadsForTeam(m1.TeamId, m1.UserId) diff --git a/server/channels/store/storetest/thread_store.go b/server/channels/store/storetest/thread_store.go index 6829eae744..2feb06710d 100644 --- a/server/channels/store/storetest/thread_store.go +++ b/server/channels/store/storetest/thread_store.go @@ -49,7 +49,7 @@ func testThreadStorePopulation(t *testing.T, rctx request.CTX, ss store.Store) { }, 999) require.NoError(t, err2) - _, err44 := ss.Channel().SaveMember(&model.ChannelMember{ + _, err44 := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/storetest/user_store.go b/server/channels/store/storetest/user_store.go index 9db24b980b..b1e0e25de2 100644 --- a/server/channels/store/storetest/user_store.go +++ b/server/channels/store/storetest/user_store.go @@ -910,28 +910,28 @@ func testUserStoreGetProfilesInChannel(t *testing.T, rctx request.CTX, ss store. c2, nErr := ss.Channel().Save(ch2, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u4.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -942,7 +942,7 @@ func testUserStoreGetProfilesInChannel(t *testing.T, rctx request.CTX, ss store. _, err = ss.User().Update(rctx, u4, true) require.NoError(t, err) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1019,7 +1019,7 @@ func testUserStoreGetProfilesInChannel(t *testing.T, rctx request.CTX, ss store. _, nErr = ss.Team().SaveMember(&model.TeamMember{TeamId: teamId, UserId: user2Admin.Id}, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: user2Admin.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1080,14 +1080,14 @@ func testUserStoreGetProfilesInChannelByAdmin(t *testing.T, rctx request.CTX, ss c1, nErr := ss.Channel().Save(ch1, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: user1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: user2Admin.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1096,7 +1096,7 @@ func testUserStoreGetProfilesInChannelByAdmin(t *testing.T, rctx request.CTX, ss require.NoError(t, nErr) ss.Channel().UpdateMembersRole(c1.Id, []string{user2Admin.Id}) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: user3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1184,28 +1184,28 @@ func testUserStoreGetProfilesInChannelByStatus(t *testing.T, rctx request.CTX, s c2, nErr := ss.Channel().Save(ch2, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u4.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1216,7 +1216,7 @@ func testUserStoreGetProfilesInChannelByStatus(t *testing.T, rctx request.CTX, s _, err = ss.User().Update(rctx, u4, true) require.NoError(t, err) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1401,28 +1401,28 @@ func testUserStoreGetAllProfilesInChannel(t *testing.T, rctx request.CTX, ss sto c2, nErr := ss.Channel().Save(ch2, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1549,28 +1549,28 @@ func testUserStoreGetProfilesNotInChannel(t *testing.T, rctx request.CTX, ss sto }, profiles) }) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1757,7 +1757,7 @@ func testUserStoreGetProfileByGroupChannelIdsForUser(t *testing.T, rctx request. require.NoError(t, nErr) for _, uId := range []string{u1.Id, u2.Id, u3.Id} { - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: gc1.Id, UserId: uId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -1773,7 +1773,7 @@ func testUserStoreGetProfileByGroupChannelIdsForUser(t *testing.T, rctx request. require.NoError(t, nErr) for _, uId := range []string{u1.Id, u3.Id, u4.Id} { - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: gc2.Id, UserId: uId, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -2445,7 +2445,7 @@ func testUserUnreadCount(t *testing.T, rctx request.CTX, ss store.Store) { m2.UserId = u2.Id m2.NotifyProps = model.GetDefaultChannelNotifyProps() - _, nErr = ss.Channel().SaveMember(&m2) + _, nErr = ss.Channel().SaveMember(rctx, &m2) require.NoError(t, nErr) m3 := model.ChannelMember{} @@ -2453,7 +2453,7 @@ func testUserUnreadCount(t *testing.T, rctx request.CTX, ss store.Store) { m3.UserId = u3.Id m3.NotifyProps = model.GetDefaultChannelNotifyProps() - _, nErr = ss.Channel().SaveMember(&m3) + _, nErr = ss.Channel().SaveMember(rctx, &m3) require.NoError(t, nErr) m1.ChannelId = c2.Id @@ -2949,19 +2949,19 @@ func testUserStoreSearchNotInChannel(t *testing.T, rctx request.CTX, ss store.St c2, nErr := ss.Channel().Save(&ch2, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3178,7 +3178,7 @@ func testUserStoreSearchInChannel(t *testing.T, rctx request.CTX, ss store.Store c2, nErr := ss.Channel().Save(&ch2, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3186,7 +3186,7 @@ func testUserStoreSearchInChannel(t *testing.T, rctx request.CTX, ss store.Store SchemeUser: true, }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3194,7 +3194,7 @@ func testUserStoreSearchInChannel(t *testing.T, rctx request.CTX, ss store.Store SchemeUser: true, }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -3922,7 +3922,7 @@ func testCount(t *testing.T, rctx request.CTX, ss store.Store) { defer func() { require.NoError(t, ss.User().PermanentDelete(regularUser.Id)) }() _, nErr := ss.Team().SaveMember(&model.TeamMember{TeamId: teamId, UserId: regularUser.Id, SchemeAdmin: false, SchemeUser: true}, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{UserId: regularUser.Id, ChannelId: channelId, SchemeAdmin: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{UserId: regularUser.Id, ChannelId: channelId, SchemeAdmin: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) guestUser := &model.User{} @@ -3933,7 +3933,7 @@ func testCount(t *testing.T, rctx request.CTX, ss store.Store) { defer func() { require.NoError(t, ss.User().PermanentDelete(guestUser.Id)) }() _, nErr = ss.Team().SaveMember(&model.TeamMember{TeamId: teamId, UserId: guestUser.Id, SchemeAdmin: false, SchemeUser: false, SchemeGuest: true}, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{UserId: guestUser.Id, ChannelId: channelId, SchemeAdmin: false, SchemeUser: false, SchemeGuest: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{UserId: guestUser.Id, ChannelId: channelId, SchemeAdmin: false, SchemeUser: false, SchemeGuest: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) teamAdmin := &model.User{} @@ -3944,7 +3944,7 @@ func testCount(t *testing.T, rctx request.CTX, ss store.Store) { defer func() { require.NoError(t, ss.User().PermanentDelete(teamAdmin.Id)) }() _, nErr = ss.Team().SaveMember(&model.TeamMember{TeamId: teamId, UserId: teamAdmin.Id, SchemeAdmin: true, SchemeUser: true}, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{UserId: teamAdmin.Id, ChannelId: channelId, SchemeAdmin: true, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{UserId: teamAdmin.Id, ChannelId: channelId, SchemeAdmin: true, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) sysAdmin := &model.User{} @@ -3955,7 +3955,7 @@ func testCount(t *testing.T, rctx request.CTX, ss store.Store) { defer func() { require.NoError(t, ss.User().PermanentDelete(sysAdmin.Id)) }() _, nErr = ss.Team().SaveMember(&model.TeamMember{TeamId: teamId, UserId: sysAdmin.Id, SchemeAdmin: false, SchemeUser: true}, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{UserId: sysAdmin.Id, ChannelId: channelId, SchemeAdmin: true, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{UserId: sysAdmin.Id, ChannelId: channelId, SchemeAdmin: true, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) // Deleted @@ -4923,13 +4923,13 @@ func testUserStoreGetUsersBatchForIndexing(t *testing.T, rctx request.CTX, ss st TeamId: t1.Id, }, 100) require.NoError(t, nErr) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: u2.Id, ChannelId: cPub1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: u2.Id, ChannelId: cPub2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -4951,13 +4951,13 @@ func testUserStoreGetUsersBatchForIndexing(t *testing.T, rctx request.CTX, ss st DeleteAt: model.GetMillis(), }, 100) require.NoError(t, nErr) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: u3.Id, ChannelId: cPub2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, err) - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ UserId: u3.Id, ChannelId: cPriv.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -5162,7 +5162,7 @@ func testUserStoreGetChannelGroupUsers(t *testing.T, rctx request.CTX, ss store. userGroupA, userGroupB, userNoGroup := testUsers[0], testUsers[1], testUsers[2] // add non-group-member to the channel (to prove that the query isn't just returning all members) - _, err := ss.Channel().SaveMember(&model.ChannelMember{ + _, err := ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: userNoGroup.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -5234,7 +5234,7 @@ func testUserStoreGetChannelGroupUsers(t *testing.T, rctx request.CTX, ss store. requireNUsers(2) // add team membership of allowed user - _, err = ss.Channel().SaveMember(&model.ChannelMember{ + _, err = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: channel.Id, UserId: userGroupA.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), @@ -5279,7 +5279,7 @@ func testUserStorePromoteGuestToUser(t *testing.T, rctx request.CTX, ss store.St Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) err = ss.User().PromoteGuestToUser(user.Id) @@ -5325,7 +5325,7 @@ func testUserStorePromoteGuestToUser(t *testing.T, rctx request.CTX, ss store.St Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) err = ss.User().PromoteGuestToUser(user.Id) @@ -5421,7 +5421,7 @@ func testUserStorePromoteGuestToUser(t *testing.T, rctx request.CTX, ss store.St Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) err = ss.User().PromoteGuestToUser(user.Id) @@ -5466,7 +5466,7 @@ func testUserStorePromoteGuestToUser(t *testing.T, rctx request.CTX, ss store.St Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) err = ss.User().PromoteGuestToUser(user.Id) @@ -5512,7 +5512,7 @@ func testUserStorePromoteGuestToUser(t *testing.T, rctx request.CTX, ss store.St }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user1.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user1.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) id = model.NewId() @@ -5532,7 +5532,7 @@ func testUserStorePromoteGuestToUser(t *testing.T, rctx request.CTX, ss store.St _, nErr = ss.Team().SaveMember(&model.TeamMember{TeamId: teamId2, UserId: user2.Id, SchemeGuest: true, SchemeUser: false}, 999) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user2.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user2.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) err = ss.User().PromoteGuestToUser(user1.Id) @@ -5594,7 +5594,7 @@ func testUserStoreDemoteUserToGuest(t *testing.T, rctx request.CTX, ss store.Sto Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) updatedUser, err := ss.User().DemoteUserToGuest(user.Id) @@ -5638,7 +5638,7 @@ func testUserStoreDemoteUserToGuest(t *testing.T, rctx request.CTX, ss store.Sto Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: true, SchemeUser: false, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) updatedUser, err := ss.User().DemoteUserToGuest(user.Id) @@ -5728,7 +5728,7 @@ func testUserStoreDemoteUserToGuest(t *testing.T, rctx request.CTX, ss store.Sto Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) updatedUser, err := ss.User().DemoteUserToGuest(user.Id) @@ -5771,7 +5771,7 @@ func testUserStoreDemoteUserToGuest(t *testing.T, rctx request.CTX, ss store.Sto Type: model.ChannelTypeOpen, }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) updatedUser, err := ss.User().DemoteUserToGuest(user.Id) @@ -5815,7 +5815,7 @@ func testUserStoreDemoteUserToGuest(t *testing.T, rctx request.CTX, ss store.Sto }, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user1.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user1.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) id = model.NewId() @@ -5835,7 +5835,7 @@ func testUserStoreDemoteUserToGuest(t *testing.T, rctx request.CTX, ss store.Sto _, nErr = ss.Team().SaveMember(&model.TeamMember{TeamId: teamId2, UserId: user2.Id, SchemeGuest: false, SchemeUser: true}, 999) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ChannelId: channel.Id, UserId: user2.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ChannelId: channel.Id, UserId: user2.Id, SchemeGuest: false, SchemeUser: true, NotifyProps: model.GetDefaultChannelNotifyProps()}) require.NoError(t, nErr) updatedUser, err := ss.User().DemoteUserToGuest(user1.Id) @@ -6054,35 +6054,35 @@ func testGetKnownUsers(t *testing.T, rctx request.CTX, ss store.Store) { c3, nErr := ss.Channel().Save(ch3, -1) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c1.Id, UserId: u2.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u3.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c2.Id, UserId: u1.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), }) require.NoError(t, nErr) - _, nErr = ss.Channel().SaveMember(&model.ChannelMember{ + _, nErr = ss.Channel().SaveMember(rctx, &model.ChannelMember{ ChannelId: c3.Id, UserId: u4.Id, NotifyProps: model.GetDefaultChannelNotifyProps(), diff --git a/server/channels/store/timerlayer/timerlayer.go b/server/channels/store/timerlayer/timerlayer.go index 10bc79bcf1..64813895db 100644 --- a/server/channels/store/timerlayer/timerlayer.go +++ b/server/channels/store/timerlayer/timerlayer.go @@ -2142,10 +2142,10 @@ func (s *TimerLayerChannelStore) SaveDirectChannel(ctx request.CTX, channel *mod return result, err } -func (s *TimerLayerChannelStore) SaveMember(member *model.ChannelMember) (*model.ChannelMember, error) { +func (s *TimerLayerChannelStore) SaveMember(rctx request.CTX, member *model.ChannelMember) (*model.ChannelMember, error) { start := time.Now() - result, err := s.ChannelStore.SaveMember(member) + result, err := s.ChannelStore.SaveMember(rctx, member) elapsed := float64(time.Since(start)) / float64(time.Second) if s.Root.Metrics != nil {