From 5014df052138f96c1a5b9bf1fd1f3c8435abc4c4 Mon Sep 17 00:00:00 2001 From: "Grot (@grafanabot)" <43478413+grafanabot@users.noreply.github.com> Date: Fri, 3 Mar 2023 11:24:21 -0500 Subject: [PATCH] [v9.4.x] fix: create temp user no longer sets ID to 0 for all users (#64160) fix: create temp user no longer sets ID to 0 for all users (#64149) * fix: create temp user no longer sets ID to 0 for all users The xorm tag added to the tempuser ID field caused xorm to create all temp users with ID 0. Removing that tag allows xorm to set the ID based on the database result instead. I also added a test which was failing before this. Fixes #63995 (cherry picked from commit dbb72f2c6e6a2153c108a0951999b2b2f72f069c) Co-authored-by: Kristin Laemmert --- pkg/services/temp_user/model.go | 2 +- pkg/services/temp_user/tempuserimpl/store_test.go | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/services/temp_user/model.go b/pkg/services/temp_user/model.go index 60e520a7eb2..1e05d15d832 100644 --- a/pkg/services/temp_user/model.go +++ b/pkg/services/temp_user/model.go @@ -24,7 +24,7 @@ const ( // TempUser holds data for org invites and unconfirmed sign ups type TempUser struct { - ID int64 `xorm:"id"` + ID int64 `xorm:"pk autoincr 'id'"` OrgID int64 `xorm:"org_id"` Version int Email string diff --git a/pkg/services/temp_user/tempuserimpl/store_test.go b/pkg/services/temp_user/tempuserimpl/store_test.go index 7de6f1c40dc..507b5ef179b 100644 --- a/pkg/services/temp_user/tempuserimpl/store_test.go +++ b/pkg/services/temp_user/tempuserimpl/store_test.go @@ -32,6 +32,13 @@ func TestIntegrationTempUserCommandsAndQueries(t *testing.T) { require.Nil(t, err) } + t.Run("Can create multiple temp users", func(t *testing.T) { + setup(t) + created, err := store.CreateTempUser(context.Background(), &cmd) + require.Nil(t, err) + require.Equal(t, int64(2), created.ID) + }) + t.Run("Should be able to get temp users by org id", func(t *testing.T) { setup(t) query := tempuser.GetTempUsersQuery{OrgID: 2256, Status: tempuser.TmpUserInvitePending}