Здравствуйте. После обновления сервера CentOS 7, а в частности PHP, MariaDB и прочего, столкнулся с аномальным поведением web приложения.
Суть в следующем:
на странице, которая работает с одной из таблиц, я получаю ошибку
Invalid argument supplied for foreach() (/home/.yii-framework-1.1.16/db/ar/CActiveFinder.php:469)
Эта ошибка возникает в результате того, что primaryKey таблицы пуст:
if(is_string($this->_table->primaryKey))
...
else
{
...
foreach($this->_table->primaryKey as $name)
...
}
Но, если я через менеджер БД сделаю update любой строки этой таблицы, то в $this->_table->primaryKey мы получаем имя столбца, как и положено. Если я снова сделаю update записи, то primaryKey снова пуст! И так бесконечно. update table - ошибка - update table - работает - update table - ошибка - update table - работает...
Я прям не знаю куда копать. restart MariaDB так же помогает.
Перезалить БД сейчас не могу, т.к. это прод. Попробую на этом же сервере поднять клон приложения.
Какие у вас есть мнения?