diff --git a/server/channels/store/sqlstore/channel_store.go b/server/channels/store/sqlstore/channel_store.go index e1da7ac075..684c0d31a9 100644 --- a/server/channels/store/sqlstore/channel_store.go +++ b/server/channels/store/sqlstore/channel_store.go @@ -742,19 +742,14 @@ func (s SqlChannelStore) saveChannelT(transaction *sqlxTxWrapper, channel *model } } - var insert sq.InsertBuilder + insert := s.getQueryBuilder(). + Insert("Channels"). + Columns(channelSliceColumns()...). + Values(channelToSlice(channel)...) if s.DriverName() == model.DatabaseDriverMysql { - insert = s.getQueryBuilder(). - Insert("Channels"). - Options("IGNORE"). - Columns(channelSliceColumns()...). - Values(channelToSlice(channel)...) + insert = insert.SuffixExpr(sq.Expr("ON DUPLICATE KEY UPDATE Id=Id")) } else { - insert = s.getQueryBuilder(). - Insert("Channels"). - Columns(channelSliceColumns()...). - Values(channelToSlice(channel)...). - SuffixExpr(sq.Expr("ON CONFLICT (TeamId, Name) DO NOTHING")) + insert = insert.SuffixExpr(sq.Expr("ON CONFLICT (TeamId, Name) DO NOTHING")) } query, params, err := insert.ToSql()