Происходит следующее. Сообщения из рэббита одного за другим прилетают в функцию которая смотрит: если сообщение уже есть в бд, то обновим его, а если нет, то создадим. Созданное или обновленное сообщение отправляется на функцию репозитория, которая работает с доктриной:
public function add(EntityInterface $entity, bool $flush = false): void
{
$this->_em->persist($entity);
if ($flush) {
$this->_em->flush();
}
}
Проблема состоит в том, что вместо обновления и создания сущностей функция работает так: если сущность уже есть в БД, то она будет УДАЛЕНА, а если нет, то создана. Я нигде не вызываю метод remove. Почему у меня сущности удаляются из БД?
Если тот же код запустить без message:consume, то всё работает ок.