Запрос данных из базы в цикле с помощью orm symfony ведет себя странно, что я упустил?

Суть задачи - выводить в консоль данные из бд в бесконечном цикле.
Для этого создал команду:
class TestCommand extends Command
{
    protected function execute(InputInterface $input, OutputInterface $output)
    {
        $doctrine = $this->container->get('doctrine')->getManager();
        $repository = $doctrine->getRepository(MyClass::class);

        while (true) {
            $my_data = $repository->getFewData();
            echo $my_data[0]->getMyField() . "\n";
            sleep(2);
        }
}


И сама репа:
public function getFewData()
    {
        return $this->createQueryBuilder('c')
            ->where('c.id = 1')
            ->getQuery()
            ->getResult();
    }


Запускаю команду, все выводится. Не выключая скрипт лезу в базу, правлю my_field (это просто строка) - в консоли вывод команды не меняется.

Причем если выполнять сырой sql запрос - данные меняются на лету. Если Выполнять запрос через орм, но преобразовывать вывод в массив - аналогично данные меняются на лету.

Что я упускаю, что то где то кэшируется?
  • Вопрос задан
  • 124 просмотра
Решения вопроса 1
XanderEVG
@XanderEVG Автор вопроса
Решил проблему вставив внутрь цикла: $doctrine->clear();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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