From 632e34fc7b34d5a440ff1d77efb826eb9173b56f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20M?= Date: Mon, 1 Jul 2024 11:23:22 +0200 Subject: [PATCH] fix: message cleaner find operator (#6080) This PR fix an issue with the `IsNull()` find operator applied on one-to-many relation, this one is not supported by TypeORM. We can instead filter by an empty array to retrieve object with empty relations. --- .../services/messaging-message-cleaner.service.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/twenty-server/src/modules/messaging/message-cleaner/services/messaging-message-cleaner.service.ts b/packages/twenty-server/src/modules/messaging/message-cleaner/services/messaging-message-cleaner.service.ts index 2642baa93..21b9f5b28 100644 --- a/packages/twenty-server/src/modules/messaging/message-cleaner/services/messaging-message-cleaner.service.ts +++ b/packages/twenty-server/src/modules/messaging/message-cleaner/services/messaging-message-cleaner.service.ts @@ -1,6 +1,6 @@ import { Injectable } from '@nestjs/common'; -import { EntityManager, IsNull } from 'typeorm'; +import { EntityManager } from 'typeorm'; import { InjectWorkspaceRepository } from 'src/engine/twenty-orm/decorators/inject-workspace-repository.decorator'; import { WorkspaceRepository } from 'src/engine/twenty-orm/repository/workspace.repository'; @@ -30,10 +30,11 @@ export class MessagingMessageCleanerService { const nonAssociatedMessages = await this.messageRepository.find( { where: { - messageChannelMessageAssociations: IsNull(), + messageChannelMessageAssociations: [], }, take: limit, skip: offset, + relations: ['messageChannelMessageAssociations'], }, transactionManager, ); @@ -61,7 +62,7 @@ export class MessagingMessageCleanerService { const orphanThreads = await this.messageThreadRepository.find( { where: { - messages: IsNull(), + messages: [], }, take: limit, skip: offset,