(Atualizado) Erro ao tentar atualizar da Versão 3.1.2.1 para Versão 3.2.1.1 usando Softaculous

Bom dia, Pessoal…

Ainda sigo com problemas na atualização do OJS da versão 3.1.2.1 para a versão 3.2.1.1. Já tentei de diversas formas, inclusive, inclusive via SSH. Meu servidor de hospedagem é o Hostgator e lá tenho utilizado a ferramenta do Softaculous. Ele acusa que existe uma atualização a fazer, executa a atualização, mas no momento de dar continuidade apresenta erro. Seguem abaixo os prints para quem puder me auxiliar:

Erro:
Ocorreu um erro de banco de dados: Duplicate column name ‘assoc_type’

Já verifiquei em outros fóruns e encontrei o erro apresentado durante a atualização, mas nenhuma das resposta foi eficaz aqui.

Antes de tentar efetuar a atualização ele apresentava um outro erro, que também já havia sido citado em alguns tópicos dos fóruns, mas pelo que vi, havia sido corrigido na Versão 3.2.1.1, por isso tentei já atualizar logo. Segue a mensagem com erro:

##publication.status.published##
##publication.status.scheduled##
Rejeitado
{{ submission.id }}/
{{ currentPublication.authorsStringShort }} /
{{ localizeSubmission(currentPublication.fullTitle, currentPublication.locale) }}
Irei acrescentar parte do log de erro também, mas como imagem, pois está apresentando um erro bem grande devido à uma mensagem de alerta, mas que não atrapalha o funcionamento do sistema. Inclusive já vi essa mensagem por aqui, se alguém também souber do que se trata também:

Aproveitando, estiver pesquisando um pouco sobre o erro apresentado antes de atualizar ele mostrava a seguinte mensagem de erro no console do navegador:

`jquery.min.js:2 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user’s experience.

Agora, desculpem minha ignorância, cheguei a ler as instruções que foram recomendadas, mas não faço ideia em como corrigir isso.

Mais adiante, segui algumas orientações de outro chamado que abri aqui no chat e consegui fazer a atualização no modo hard, porém, surgiu outro erro. Agora, ao logar no sistema abre-se uma janela de erro e pede para entrar em contato com o suporte e na área das submissões ativas, ele só fica carregando e não exibe nada.

A instalação tanto manual, quanto pelo softaculous estavam dando pau na mesma coisa: os “XMLs” da DBSCRIPT. Daí, consegui atualizar das duas formas, substituindo os arquivos da pasta, pelos arquivos da instalação que estava ativa anteriormente. Porém, o que está me deixando em dúvida, é se o erro que já estava sendo apresentando na versão “estável” é o que pode estar causando o erro agora na versão atualizada.

Pensei em tentar corrigir o erro anterior e pra depois tentar atualizar novamente. Será que é uma boa?

Seguem abaixo as telas, código e log do erro:

##publication.status.published##
##publication.status.scheduled##
Rejeitado
{{ submission.id }}/
{{ currentPublication.authorsStringShort }} /
{{ localizeSubmission(currentPublication.fullTitle, currentPublication.locale) }}
Vale ressaltar que o LOG está ficando com mais de 50MB:

[22-Oct-2020 09:16:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADODB_Cache_File has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 263
[22-Oct-2020 09:16:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADOConnection has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 359
[22-Oct-2020 09:16:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADORecordSet has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 2921
[22-Oct-2020 09:16:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADORecordSet_array has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 3939
[22-Oct-2020 09:16:04 America/Fortaleza] PHP Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 1003
[22-Oct-2020 10:44:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADODB_Cache_File has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 263
[22-Oct-2020 10:44:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADOConnection has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 359
[22-Oct-2020 10:44:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADORecordSet has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 2921
[22-Oct-2020 10:44:04 America/Fortaleza] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ADORecordSet_array has a deprecated constructor in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 3939
[22-Oct-2020 10:44:04 America/Fortaleza] PHP Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home1/cienci57/cadernosdeeticaempesquisa.cienciasus.gov.br/lib/pkp/lib/adodb/adodb.inc.php on line 1003

Se alguém tiver uma luz ou alguém do fórum, agradeço demais.

Olá @augustobrasil,

Então, eu acho que a atualização do OJS pelo SSH com a hospedagem pelo Hostgator é complicada mesmo por que lá eu acho que vc não tem acesso ao banco de dados de forma direta. Eu sugiro você procurar o suporte deles mesmo pra resolver essa sua questão. Atualizar o OJS pelo Softaculous eu acho bem complicado de funcionar. Atualizar pela interface web seria a melhor solução, mas pelo visto você teve problemas também. Sugiro vc procurar os erros no banco de dados usando o PHP My Admin do Cpanel, dai vc pode ir procurando os erros e ir corrigindo um a um antes de atualizar.

Cada vez que você executar o script de atualização, seja ele pelo SSH ou pela interface web, vc ver o erro, anota o erro, volta o sistema para o original e tenta corrigir no banco antes de executar o script (cria seu próprio patch). A duplicidade as vezes acontece na versão anterior ou no próprio script de atualização. É trabalhoso mesmo, mas o script vai te informado os erros de forma sequencial e para descobrir todos vc vai quer q executar ele muitas vezes, sempre voltando tudo pro estado inicial e aplicando seus próprios “paches”.

Você chegou a procurar o suporte do Hostgator? As vezes eles podem ajudar.

Você seria capaz de pegar todo esse OJS e atualizar ele na sua própria máquina, seja usando o “virtual box” ou não?

Espero ter ajudado com alguma informação.

2 curtidas

@augustobrasil usar o Softaculous pode ser o que esta gerando os erros, a atualização deve ser direta pelo próprio OJS
@lucasrc trabalhamos com o hostgator, tanto na compartilhada como na VPS e acesso todas as databases, através do MySQL Workbench, ou qualquer outro frontend esterno ao servidor.
No mais suas instrúções são pertinente e assertivas, ressaltando que se usar o Softaculous é um erro brutal, em se tratando de OJS, não funciona, falo pelos 14 anos de experiência com OJS

2 curtidas

Estamos de pleno acordo com os colegas da @AntSoftSystems, o erro começa no uso do Softaculous para atualização. Principalmente quando o OJS já possui uma interface de atualização eficiente.
O roteiro de atualização manual é sempre o mesmo e da versão 3.1.2.1 para a versão 3.2.1.1 você não deve ter problemas de timeout ao atualizar pelo navegador.

  • Faça backup do banco, arquivos e sistema, armazenando localmente estes caso tenha problemas com a atualização;
  • Suba a nova versão do sistema e apague as pastas antigas do OJS (mantenha banco e arquivos de upload bem como a pasta public);
  • Abra o config.inc e mude a diretiva Installed para Off;
  • Abra o OJS no navegador;
  • Clique em “Se estiver atualizando uma versão do OJS Clique Aqui”;
  • Clique em atualizar.

Se der erro no banco de dados, restaure seu backup do banco de dados prévio a atualização e verifique o erro. No caso da imagem que você postou, você tem uma coluna chave duplicada no seu banco, verifique ele, apague as chaves duplicadas, se necessário peça ajuda profissional para não danificar o seu banco.
Após corrigir os erros do banco a instalação finalizará com sucesso.

Outra dica importante já que estamos aqui: Converta seu banco todo para o padrão utf-8, isso vai te poupar de bugs futuros no OJS3.

2 curtidas