Возникла проблема при обновлении feeds до 7.x-2.0-alpha6
Вчера обновился с 7.15 до 7.16. Само обновление прошло без проблем
Потом обновил feeds c 7.x-2.0-alpha5 до 7.x-2.0-alpha6
При выполнении update.php встало на ошибке
The following updates returned messages
feeds module
Update #7207
Failed: PDOException: SQLSTATE[22P02]: Invalid text representation: 7 ОШИБКА: неверный синтаксис для типа bytea: ALTER TABLE {feeds_importer} ALTER "config" TYPE bytea USING "config"::bytea; Array ( ) in db_change_field() (line 2988 of /srv/www/htdocs/includes/database/database.inc).
Запрос ALTER TABLE feeds_importer ALTER "config" TYPE bytea USING "config"::bytea;
postresql считает неверным.
А запрос ALTER TABLE feeds_importer ALTER "config" TYPE bytea
возвращает
ОШИБКА: колонку "config" нельзя привести к типу bytea
Проблема решается если удалить всё содержимое таблиц feeds_importer и feeds_source, выполнить update.php и завести настройки Feeds заново.
Но что делать в будущем, если тип поля будет изменяться на таблице с несравненно большим количеством строк?
И как эту проблему можно решить не удаляя строки?
Неверный запрос формируется в
includes/database/pgsql/schema.inc.DatabaseSchema_pgsql->changeField:533
$this->connection->query('ALTER TABLE {' . $table . '} ALTER "' . $field . '" TYPE ' . $typecast . ' USING "' . $field . '"::' . $typecast);