Ошибка в логе

Здравствуйте. На сайте есть простой код посчета количества пользователей в определенных группах с разделением по полу: $c = $modx->newQuery('modUser');

$c->innerJoin('modUserProfile', 'p', 'modUser.id = p.internalKey');

$c->innerJoin ('modUserGroupMember','m', 'modUser.id = m.member');

$c->where(array('m.user_group:IN' => array(1,3,4)));



$totalCount = $modx->getCount('modUser', $c);



    $c->where(array('p.gender' => 2));

$girlsCount = $modx->getCount('modUser', $c);

$boysCount = $totalCount - $girlsCount; — код корректно работает, выводит результат, но в логах периодически выскакивает ошибка: [2014-10-16 08:45:09] (ERROR @ /index.php) Error 42S22 executing statement: 

Array

(

[0] => 42S22

[1] => 1054

[2] => Unknown column 'm.user_group' in 'field list'

) Подскажите, пожалуйста, с чем связанна данная проблема? Заранее спасибо.

Есть подозрение, что ошибка генерируется где-то в другом месте. То есть у вас возможно подобный код есть где-то еще. У вас код корректный если бы в нем возникала эта ошибка, он бы ничего уже не считал, ибо SQL-ошибка распространяется на весь запрос.

Нигде больше переменная m.user_group не используется (дополнительно проверил поиском по всем файлам и бд), а сама ошибка проскакивает периодически - систематичными действиями принудительно выловить ее не удалось.

Тогда даже не знаю что может быть. Просто даже гадать не буду, хоть и интересно в чем же причина. Синтаксис ОК.

Попробуйте так сделать: Перед вызовом пропишите $modx->setLogLevel(0);, а после $modx->setLogLevel(1); Так вы закроете логирование ошибок именно в этом месте. Важно, чтобы после этого $modx->setLogLevel(1) было, чтобы дальнейшие ошибки логировались. И понадлюдайте недельку. Если ошибки в логах пропадут, значит точно в этом месте проблема, но это уже на стороне мускула однозначно. Может таблица лочится или типа того.

Попробую, спасибо большое..)