Skip to content

Commit b2247a7

Browse files
authored
Release - Fix migration channel sync stage command (#15141)
1 parent 31206e8 commit b2247a7

File tree

1 file changed

+36
-6
lines changed

1 file changed

+36
-6
lines changed

packages/twenty-server/src/database/commands/upgrade-version-command/1-8/1-8-migrate-channel-sync-stages.command.ts

Lines changed: 36 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -143,11 +143,26 @@ export class MigrateChannelSyncStagesCommand extends ActiveOrSuspendedWorkspaces
143143
`Would migrate deprecated messageChannel sync stages for workspace ${workspaceId}`,
144144
);
145145
} else {
146-
const messageChannelUpdateResult = await this.coreDataSource.query(
147-
`UPDATE "${schemaName}"."${tableName}"
146+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
147+
let messageChannelUpdateResult: any;
148+
149+
try {
150+
messageChannelUpdateResult = await this.coreDataSource.query(
151+
`UPDATE "${schemaName}"."${tableName}"
148152
SET "syncStage" = 'MESSAGE_LIST_FETCH_PENDING'
149153
WHERE "syncStage" IN ('FULL_MESSAGE_LIST_FETCH_PENDING', 'PARTIAL_MESSAGE_LIST_FETCH_PENDING')`,
150-
);
154+
);
155+
} catch {
156+
await this.coreDataSource.query(
157+
`ALTER TYPE ${schemaName}."messageChannel_syncStage_enum" ADD VALUE IF NOT EXISTS 'MESSAGE_LIST_FETCH_PENDING'`,
158+
);
159+
160+
messageChannelUpdateResult = await this.coreDataSource.query(
161+
`UPDATE "${schemaName}"."${tableName}"
162+
SET "syncStage" = 'MESSAGE_LIST_FETCH_PENDING'
163+
WHERE "syncStage" IN ('FULL_MESSAGE_LIST_FETCH_PENDING', 'PARTIAL_MESSAGE_LIST_FETCH_PENDING')`,
164+
);
165+
}
151166

152167
const messageChannelRowsUpdated = messageChannelUpdateResult[1] || 0;
153168

@@ -224,11 +239,26 @@ export class MigrateChannelSyncStagesCommand extends ActiveOrSuspendedWorkspaces
224239
`Would migrate deprecated calendarChannel sync stages for workspace ${workspaceId}`,
225240
);
226241
} else {
227-
const calendarChannelUpdateResult = await this.coreDataSource.query(
228-
`UPDATE "${schemaName}"."${tableName}"
242+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
243+
let calendarChannelUpdateResult: any;
244+
245+
try {
246+
calendarChannelUpdateResult = await this.coreDataSource.query(
247+
`UPDATE "${schemaName}"."${tableName}"
229248
SET "syncStage" = 'CALENDAR_EVENT_LIST_FETCH_PENDING'
230249
WHERE "syncStage" IN ('FULL_CALENDAR_EVENT_LIST_FETCH_PENDING', 'PARTIAL_CALENDAR_EVENT_LIST_FETCH_PENDING')`,
231-
);
250+
);
251+
} catch {
252+
await this.coreDataSource.query(
253+
`ALTER TYPE ${schemaName}."calendarChannel_syncStage_enum" ADD VALUE IF NOT EXISTS 'CALENDAR_EVENT_LIST_FETCH_PENDING'`,
254+
);
255+
256+
calendarChannelUpdateResult = await this.coreDataSource.query(
257+
`UPDATE "${schemaName}"."${tableName}"
258+
SET "syncStage" = 'CALENDAR_EVENT_LIST_FETCH_PENDING'
259+
WHERE "syncStage" IN ('FULL_CALENDAR_EVENT_LIST_FETCH_PENDING', 'PARTIAL_CALENDAR_EVENT_LIST_FETCH_PENDING')`,
260+
);
261+
}
232262

233263
const calendarChannelRowsUpdated = calendarChannelUpdateResult[1] || 0;
234264

0 commit comments

Comments
 (0)