Mono repo -> Master (#22553)
Combines the following repositories into one: https://github.com/mattermost/mattermost-server https://github.com/mattermost/mattermost-webapp https://github.com/mattermost/focalboard https://github.com/mattermost/mattermost-plugin-playbooks
Этот коммит содержится в:
@@ -0,0 +1,47 @@
|
||||
CREATE PROCEDURE Migrate_LastRootPostAt_Default ()
|
||||
BEGIN
|
||||
IF (
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = 'Channels'
|
||||
AND TABLE_SCHEMA = DATABASE()
|
||||
AND COLUMN_NAME = 'LastRootPostAt'
|
||||
AND (COLUMN_DEFAULT IS NULL OR COLUMN_DEFAULT != 0)
|
||||
) = 1 THEN
|
||||
ALTER TABLE Channels ALTER COLUMN LastRootPostAt SET DEFAULT 0;
|
||||
END IF;
|
||||
END;
|
||||
CALL Migrate_LastRootPostAt_Default ();
|
||||
DROP PROCEDURE IF EXISTS Migrate_LastRootPostAt_Default;
|
||||
|
||||
CREATE PROCEDURE Migrate_LastRootPostAt_Fix ()
|
||||
BEGIN
|
||||
IF (
|
||||
SELECT COUNT(*)
|
||||
FROM Channels
|
||||
WHERE LastRootPostAt IS NULL
|
||||
) > 0 THEN
|
||||
-- fixes migrate cte and sets the LastRootPostAt for channels that don't have it set
|
||||
UPDATE
|
||||
Channels
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
Channels.Id channelid,
|
||||
COALESCE(MAX(Posts.CreateAt), 0) AS lastrootpost
|
||||
FROM
|
||||
Channels
|
||||
LEFT JOIN Posts FORCE INDEX (idx_posts_channel_id_update_at) ON Channels.Id = Posts.ChannelId
|
||||
WHERE
|
||||
Posts.RootId = ''
|
||||
GROUP BY
|
||||
Channels.Id) AS q ON q.channelid = Channels.Id
|
||||
SET
|
||||
LastRootPostAt = lastrootpost
|
||||
WHERE
|
||||
LastRootPostAt IS NULL;
|
||||
|
||||
-- sets LastRootPostAt to 0, for channels with no posts
|
||||
UPDATE Channels SET LastRootPostAt=0 WHERE LastRootPostAt IS NULL;
|
||||
END IF;
|
||||
END;
|
||||
CALL Migrate_LastRootPostAt_Fix ();
|
||||
DROP PROCEDURE IF EXISTS Migrate_LastRootPostAt_Fix;
|
||||
Ссылка в новой задаче
Block a user