При переносе сайта на другой хостинг ошибка

Возникла ошибка, перенес сайт на другой хостинг и теперь в некоторых местах

Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 32 bytes) in /home/.../includes/elements/modsnippet/126.include.cache.php on line 15

Как побороть?

UPD

Нашел место в сниппете где возникает ошибка

$q = $modx->newQuery('Dipl');
    $q->prepare();
    $q->stmt->execute();
    $total = $q->stmt->rowCount();
    return $total;
Konstantin
02 мая 2016, 22:49
modx.pro
1 047
0

Комментарии: 6

Konstantin
03 мая 2016, 03:07
0
$q = $modx->query('SELECT id FROM `modx_dipl`');
$total = $q->rowCount();
return $total;
как то так запахало
    Евгений Ка
    03 мая 2016, 09:13
    0
    Извините, что вмешиваюсь. )))
    А нужно просто посчитать?
    Почему бы не сделать?!
    $q = $modx->query('SELECT count(id) FROM `modx_dipl`');
      Роман Садоян
      03 мая 2016, 09:29
      +1
      Можно обойтись одной строчкой
      $total = $modx->getCount('Dipl');
        Евгений Ка
        03 мая 2016, 11:31
        0
        С точки зрения расходов ресурсов этот способ тоже не сильно оптимальный, как я понимаю.
        Отсюда в общем-то и возникают моменты, что 256МБ уже не «хватит на всех».
        Хотя с точки зрения идеологии MODX он наверное лучше тупого SQL count-запроса.
          Роман Садоян
          03 мая 2016, 13:08
          +1
          На деле будет почти такой же запрос, как и у тебя, только
          SELECT COUNT(*) FROM modx_dipl
          .
          Прямой SQL запрос лучше писать, когда используешь сложные выборки, но даже при сложных выборках надежнее использовать XPDO.

          P.S.: Это же сколько записей должно быть в таблице, что бы 256 МБ не хватило для получения кол-ва записей. =)
            Konstantin
            04 мая 2016, 00:09
            0
            Ну вот тем первым способом который выдавал ошибку лимита было в табе — 500 тыс строк всего
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      6