Critical email sync bug (#11885)

Removing the upsert to avoid the ON CONFLICT
This commit is contained in:
Guillim
2025-05-06 11:17:27 +02:00
committed by GitHub
parent 9435d525cf
commit e92117d556

View File

@ -62,19 +62,39 @@ export class MessagingMessageService {
});
if (existingMessage) {
await messageChannelMessageAssociationRepository.upsert(
{
messageChannelId,
messageId: existingMessage.id,
messageExternalId: message.externalId,
messageThreadExternalId: message.messageThreadExternalId,
},
{
conflictPaths: ['messageChannelId', 'messageId'],
indexPredicate: '"deletedAt" IS NULL',
},
transactionManager,
);
const existingAssociation =
await messageChannelMessageAssociationRepository.findOne(
{
where: {
messageChannelId,
messageId: existingMessage.id,
},
},
transactionManager,
);
if (existingAssociation) {
await messageChannelMessageAssociationRepository.update(
{
id: existingAssociation.id,
},
{
messageExternalId: message.externalId,
messageThreadExternalId: message.messageThreadExternalId,
},
transactionManager,
);
} else {
await messageChannelMessageAssociationRepository.insert(
{
messageChannelId,
messageId: existingMessage.id,
messageExternalId: message.externalId,
messageThreadExternalId: message.messageThreadExternalId,
},
transactionManager,
);
}
continue;
}