mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
Fixes race condition
This commit is contained in:
@@ -4,7 +4,6 @@
|
||||
package store
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/mattermost/platform/model"
|
||||
"github.com/mattermost/platform/utils"
|
||||
)
|
||||
@@ -154,10 +153,17 @@ func (s SqlChannelStore) extraUpdated(channel *model.Channel) StoreChannel {
|
||||
|
||||
channel.ExtraUpdated()
|
||||
|
||||
if count, err := s.GetMaster().Update(channel); err != nil {
|
||||
_, err := s.GetMaster().Exec(
|
||||
`UPDATE
|
||||
Channels
|
||||
SET
|
||||
ExtraUpdateAt = :Time
|
||||
WHERE
|
||||
Id = :Id`,
|
||||
map[string]interface{}{"Id": channel.Id, "Time": channel.ExtraUpdateAt})
|
||||
|
||||
if err != nil {
|
||||
result.Err = model.NewAppError("SqlChannelStore.extraUpdated", "Problem updating members last updated time", "id="+channel.Id+", "+err.Error())
|
||||
} else if count != 1 {
|
||||
result.Err = model.NewAppError("SqlChannelStore.extraUpdated", "Problem updating members last updated time", fmt.Sprintf("id=%v, count=%v", channel.Id, count))
|
||||
}
|
||||
|
||||
storeChannel <- result
|
||||
|
||||
Reference in New Issue
Block a user