Проблема при обновлении OTRS4->OTRS5

Запросы на решение проблем

Модератор: ykolesnikov

Ответить
Dee
OTRS Новобранец
Сообщения: 3
Зарегистрирован: 14 апр 2017, 15:35

Проблема при обновлении OTRS4->OTRS5

Сообщение Dee » 14 апр 2017, 15:58

Добрый день.
Текущая версия системы: 4.0.5, Postgresql: 8.4.
Хочу обновиться до последней OTRS с Postgresql 9.4.
Для этого использовал инструкцию: http://doc.otrs.com/doc/manual/admin/5. ... ading.html

1. Снял дамп базы в 8.4:

Код: Выделить всё

root@otrs:/var/lib/apt# pg_dump -h localhost -U "otrs" -W -v -Fc --file=14apr
2. Восстановил базу в новую 9.4:

Код: Выделить всё

root@debian87:/home/dee# pg_restore --dbname=otrs -v -U otrs -W 14apr
3. /opt/otrs/bin/otrs.CheckModules.pl отработал - всё нормально, за исключением тех модулей, которые я не использую для других БД

4. После рестора БД сделал вакууминг:

Код: Выделить всё

root@debian87:/opt/otrs# su postgres
postgres@debian87:/opt/otrs$ vacuumdb -a -z
vacuumdb: vacuuming database "otrs
5. Запускаю апдейт схемы БД. И вот здесь случается затык (пункт :

Код: Выделить всё

shell> cd /opt/otrs/
shell> cat scripts/DBUpdate-to-5.postgresql.sql | psql --set ON_ERROR_STOP=on --single-transaction otrs otrs
Получаю результат:
Migration started...

Step 1 of 18: Refresh configuration cache...
If you see warnings about 'Subroutine Load redefined', that's fine, no need to worry!
done.

Step 2 of 18: Check framework version...done.

Step 3 of 18: Migrate Database Column Types...[Thu Apr 13 13:39:27 2017] DBUpdate-to-5.pl: DBD::Pg::db do failed: ERROR: cannot alter type of a column used by a view or rule
[Thu Apr 13 13:39:27 2017] DBUpdate-to-5.pl: DETAIL: rule _RETURN on view support_team_stats depends on column "id" at /opt/otrs/Kernel/System/DB.pm line 461.
ERROR: OTRS-DBUpdate-to-5.pl-62 Perl: 5.20.2 OS: linux Time: Thu Apr 13 13:39:27 2017

Message: ERROR: cannot alter type of a column used by a view or rule
DETAIL: rule _RETURN on view support_team_stats depends on column "id", SQL: 'ALTER TABLE ticket ALTER id TYPE BIGINT'

Traceback (11708):
Module: main::_MigrateDatabaseColumnTypes Line: 338
Module: scripts/DBUpdate-to-5.pl Line: 166

ERROR: OTRS-DBUpdate-to-5.pl-62 Perl: 5.20.2 OS: linux Time: Thu Apr 13 13:39:27 2017

Message: Error during execution of 'ALTER TABLE ticket ALTER id TYPE BIGINT'!

Traceback (11708):
Module: main::_MigrateDatabaseColumnTypes Line: 340
Module: scripts/DBUpdate-to-5.pl Line: 166

error.

[Thu Apr 13 13:39:27 2017] DBUpdate-to-5.pl: Died at scripts/DBUpdate-to-5.pl line 171.
К сожалению, я не нагуглил ничего конкретного, посвятил этому несколько дней, но дальше продвинуться не удалось.
Возможно, что правильнее будет апдейтнуть отдельно ОТРС, без апдейта postgresql. Но на старом софте не особо хотелось бы работать.

Заранее спасибо всем, кто поучаствует.

Dee
OTRS Новобранец
Сообщения: 3
Зарегистрирован: 14 апр 2017, 15:35

Re: Проблема при обновлении OTRS4->OTRS5

Сообщение Dee » 18 апр 2017, 12:24

Я также хотел сказать, что дроп базы, потом заливка бэкапа снова не помогла.

Код: Выделить всё

otrs@debian87:/opt/otrs$ cat scripts/DBUpdate-to-5.postgresql.sql | psql --set ON_ERROR_STOP=on --single-transaction otrs otrs
Password for user otrs: 
SET
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
DROP TABLE
ALTER TABLE
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
SET
ALTER TABLE
ALTER TABLE
ALTER TABLE
ALTER TABLE
Ошибка всё такая же, но в этот раз на следующем этапе: 6.2:

Код: Выделить всё

otrs@debian87:/opt/otrs$ whoami
otrs
otrs@debian87:/opt/otrs$ scripts/DBUpdate-to-5.pl

Migration started...

Step 1 of 18: Refresh configuration cache...
If you see warnings about 'Subroutine Load redefined', that's fine, no need to worry!
done.

Step 2 of 18: Check framework version...done.

Step 3 of 18: Migrate Database Column Types...[Tue Apr 18 05:20:49 2017] DBUpdate-to-5.pl: DBD::Pg::db do failed: ERROR:  cannot alter type of a column used by a view or rule
[Tue Apr 18 05:20:49 2017] DBUpdate-to-5.pl: DETAIL:  rule _RETURN on view support_team_stats depends on column "id" at /opt/otrs/Kernel/System/DB.pm line 461.
ERROR: OTRS-DBUpdate-to-5.pl-62 Perl: 5.20.2 OS: linux Time: Tue Apr 18 05:20:49 2017

 Message: ERROR:  cannot alter type of a column used by a view or rule
DETAIL:  rule _RETURN on view support_team_stats depends on column "id", SQL: 'ALTER TABLE ticket ALTER id TYPE BIGINT'

 Traceback (2727): 
   Module: main::_MigrateDatabaseColumnTypes Line: 338
   Module: scripts/DBUpdate-to-5.pl Line: 166

ERROR: OTRS-DBUpdate-to-5.pl-62 Perl: 5.20.2 OS: linux Time: Tue Apr 18 05:20:49 2017

 Message: Error during execution of 'ALTER TABLE ticket ALTER id TYPE BIGINT'!

 Traceback (2727): 
   Module: main::_MigrateDatabaseColumnTypes Line: 340
   Module: scripts/DBUpdate-to-5.pl Line: 166

error.

[Tue Apr 18 05:20:49 2017] DBUpdate-to-5.pl: Died at scripts/DBUpdate-to-5.pl line 171.
otrs@debian87:/opt/otrs$

Dee
OTRS Новобранец
Сообщения: 3
Зарегистрирован: 14 апр 2017, 15:35

Re: Проблема при обновлении OTRS4->OTRS5

Сообщение Dee » 18 апр 2017, 14:09

Можно закрыть тему.
scripts/DBUpdate-to-5.pl делать не нужно, если у меня POSTGRESQL.

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Проблема при обновлении OTRS4->OTRS5

Сообщение alexus » 20 апр 2017, 02:42

Dee писал(а):Можно закрыть тему.
scripts/DBUpdate-to-5.pl делать не нужно, если у меня POSTGRESQL.
Кто сказал, что не нужно?

Код: Выделить всё

 Message: ERROR:  cannot alter type of a column used by a view or rule
DETAIL:  rule _RETURN on view support_team_stats depends on column "id", SQL: 'ALTER TABLE ticket ALTER id TYPE BIGINT'
Тут ваша проблема более чем прозрачано описана - у вас кастомная вьюшка support_team_stats мешается.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ответить