chazovs
@chazovs
Корпорация Центр

Почему Doctrine ORM удаляет сущности, когда symfony работает в режиме message:consume?

Происходит следующее. Сообщения из рэббита одного за другим прилетают в функцию которая смотрит: если сообщение уже есть в бд, то обновим его, а если нет, то создадим. Созданное или обновленное сообщение отправляется на функцию репозитория, которая работает с доктриной:
public function add(EntityInterface $entity, bool $flush = false): void
    {
        $this->_em->persist($entity);

        if ($flush) {
            $this->_em->flush();
        }
    }


Проблема состоит в том, что вместо обновления и создания сущностей функция работает так: если сущность уже есть в БД, то она будет УДАЛЕНА, а если нет, то создана. Я нигде не вызываю метод remove. Почему у меня сущности удаляются из БД?
Если тот же код запустить без message:consume, то всё работает ок.
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы