GLPI 9.2.2
Até que enfim! Finalmente o GLPI 9.2.2 saiu e corrigiram o problema no cabeçalho do chamado para os perfis simplificados. Agora sim podem migrar para a versão 9.2.2 que está cheia de novidades. Mas detalhes podem ser visto aqui.
Porém como toda mudança vem alguns problemas, mas nada que não possa ser resolvido. Identifiquei dois problemas durante a migração do glpi para a versão 9.2.2. Os problemas ocorreram durante a migração de uma versão 9.1.x para 9.2.x. Os erros estão em 3 tabelas, duas que foram modificadas (slas e slts) e um nova (notification_notificationtemplates).
Erro tabela slas e slts
Observe que o comando altera a tabela slts para slas, e tentar adicionar um índice slms_id para a coluna de mesmo nome. O problema é essa coluna não existe. Antes de executar esse comando, deveria alterar primeiro a coluna slas_id para slms_id.
A primeira coisa a fazer é o backup do seu GLPI de produção. Feito isso, crie um banco novo, (não importa a ferramenta que vai usar, workbenq, phpMyAdmin, console). Se você estiver usando o plugin browsernotification, sugiro excluí-lo antes da importação, visto que nas versões 9.2.X essa funcionalidade já está nativa. Importe as tabelas para esse novo banco. A primeira mudança a fazer, é alterar as tabelas glpi_slas para glpi_slms e glpi_slts para glpi_slas. Dentro da tabela renomeada glpi_slas, existe a coluna slas_id, que deve ser alterada para slms_id. Remova o índice referente a slas_id e crie outro com o nome slms_id.
Alterar nomes da tabela
ALTER TABLE <nome_DB_criado>.glpi_slas RENAME TO nome_DB_criado.glpi_slms;
ALTER TABLE <nome_DB_criado>.glpi_slts RENAME TO nome_DB_criado.glpi_slas;
Altare coluna da tabela
ALTER TABLE <nome_DB_criado>.glpi_slas CHANGE slas_id slms_id integer(11) unsigned;
Removendo o índice slas_id e criando o índice slms_id
DROP INDEX slas_id ON <nome_DB_criado>.glpi_slas;
CREATE INDEX smls_id ON <nome_DB_criado>.glpi_slas (slms_id) USING BTREE;
Feito isso, faça o backup desse banco, instale o novo glpi 9.2.2 com um banco vazio e importe esse backup. No decorrer da importação aparecerá o erro abaixo.
Nesse momento foi criada a nova tabela glpi_notifications_notificationtempates e o comando tentar alterar na coluna mode, todos o dados com o nome mail para malling, porém acusa duplicidade de informações. O que acontece é que nas versões 9.1.x essa coluna está na tabela glpi_notifications com 58 linhas. para melhorar sua consulta na versão 9.2.x, foi criado a tabela glpi_notifications_notificationtempates, que é a associação da glpi_notifications com a glpi_notificationtemplates. Nessa versão foram adicionados novos IDs totalizando 72 linhas, e ao invés do comando alterar as existentes e adicionar as novas, ocorre que ele adiciona todas, e depois tentar alterá-las. Nesse momento acusa a duplicidade, pois já existem os 58 IDs alterados e os não alterados. Para corrigir sigas os comandos abaixo.
SET SQL_SAFE_UPDATES=0;
DELETE FROM <nome_DB_novo>.glpi_notifications_notificationtemplates WHERE mode = ‘mail’;
Após a remoção execute novamente o update do novo glpi;
Obrigado pela ajuda. Porem apos executar todos os procedimentos, o GLPI não acha os chamados.
O campo fica em branco. Você poderia dar um help?
Caio,
Desculpe a demora. Por algum motivo, a sua resposta não chegou ao meu e-mail. Só agora acesso o site que pude ver. Antes de realizar esse procedimento, vc estava visualizando todos os chamados? Esse procedimento é para permitir a migração das versões 9.1.x para 9.2.2. As únicas tabelas alteradas são as de SLA e notificações. Não há qualquer relação com as tabelas de chamados. Fiz em meu ambiente de testes sem problemas. Poderia me dar mais detalhes? Quando tentou migrar, estava recebendo os mesmo erros citados acima?
Amigo, estou com o mesmo problema do CAIO ALVES.
Migrei do 0.84.7 para o 9.1.1 e tudo importou tranquilo. No momento que acesso os chamados ele carrega o chamado. Fica somente o título do chamado na tela, sem nenhuma campo.
Alguem já passou por esse problema?
QUando você importou, não apresentou nenhum erro? Você atualizou ou instalou um novo e importou o banco. Seria o mais seguro. Fazer um backup instalar do zero com um banco zero (mariadb novo), e importar o banco.