Стояла у нас otrs 3.1.9, в целом есть не просила, но хотелось обновиться на новую ветку, что и было сделано после не особо длительного теста.
Выбор пал на 3.2.6, хоть за время теста и вышли более новые версии, но эта уже точно была проверена на полную работоспособность.
Обновлял банально: сделал дамп базы, начисто установил 3.2.6, залил дамп, сконвертировал скриптом DBUpdate, прикрутил аутентификацию через ldap, всё завелось без проблем, вздохнул полной грудью и начал радоваться, но счастье было недолгим, выяснилось что не работает клиентский модуль, точнее сам customer.pl отрабатывает, но сразу же после аутентификации клиента, слетает в internal server error. По логам админки вижу что аутентификация была успешна, более ничего, в httpd-errors такая картина:
Код: Выделить всё
[Wed Sep 04 09:18:06 2013] [error] [client 10.0.0.113] Can't store REGEXP items at /usr/local/lib/perl5/site_perl/5.14.2/mach/Storable.pm line 340, at /opt/otrs-3.2.6/bin/cgi-bin/../../Kernel/System/AuthSession/DB.pm line 601., referer: http://sd.krzn.ru/otrs/customer.pl
[Wed Sep 04 09:18:06 2013] [error] [client 10.0.0.113] Premature end of script headers: customer.pl, referer: http://sd.krzn.ru/otrs/customer.pl
Код: Выделить всё
[Wed Sep 04 09:20:42 2013] [error] [client 10.0.0.113] Can't store REGEXP items at /usr/local/lib/perl5/site_perl/5.14.2/mach/Storable.pm line 340, at /opt/otrs-3.2.6/bin/cgi-bin/../../Kernel/System/AuthSession/FS.pm line 276., referer: http://sd.krzn.ru/otrs/customer.pl
[Wed Sep 04 09:20:42 2013] [error] [client 10.0.0.113] Premature end of script headers: customer.pl, referer: http://sd.krzn.ru/otrs/customer.pl
Лезу в конфики FS.pm и DB.pm на указанные строки, в обоих случаях там вот это:
Код: Выделить всё
# dump the data
my $DataContent = Storable::nfreeze( \%Data );
Что дальше? Иду по указанной 340 строке в Storable.pm, там вижу
Код: Выделить всё
# Call C routine mstore or net_mstore, depending on network order
eval { $ret = &$xsptr($self) };
Дохожу до банального решения, заглянуть на тестовый сервак, где на такой же freebsd с таким же ядром, такой же версией апача, перла, mysql и вообще можно сказать они близнецы братья, всё работает.
Проблема в разнице, иду в cpan, вывожу в файл версии модулей на обоих серваках, смотрю diff, устраняю разницу, все равно не работает.
Так как без бэкапов никуда, иду в бэкапы, смотрю там файлик DB.pm, в нем вместо 7 сотен строк всего 3 сотни, то есть отличаются катастрофически, но основное изменение сразу бросается в глаза, в старом вообще нет
Код: Выделить всё
use Storable.pm
Ну и да, самое важное, гуглинг по ошибкам ничего толком не дал.
Уж простите за полотно, но старался изложить проблему наиболее полно.