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