resumptionToken erro 500 ao abrir próxima página

Olá,
Como posso reindexar os arquivos, links do OJS?
Navegando no link abaixo, clicando vai funcionando, quando clico no RESUME para ir a próxima página da erro 500

https://periodicos.unicesumar.edu.br/index.php/index/oai?verb=ListRecords&resumptionToken=774965cd6953fa7d0312609baf95e2e4

O link que abriria seria este

https://periodicos.unicesumar.edu.br/index.php/index/oai?verb=ListRecords&resumptionToken=b8ecb12dcf3be10fae7521832c4f9b50

Acontece que este erro, tem afetado nossa integração com a EBSCO, não detectei no sistema nenhuma anomalia perceptivel de funcionalidade.

Versão Atual: 3.3.0.19

at.te,

1 curtida

Olá, @FilipeManciniMagnani ,

Esse caso, a princípio, não parece estar relacionado à reindexação dos arquivos ou links do OJS. O rebuildSearchIndex.php atua no índice de busca interna do portal, enquanto a URL informada utiliza o endpoint OAI-PMH (/oai?verb=ListRecords), usado por indexadores e bases externas para colher metadados.

Como o erro ocorre ao acionar o resumptionToken, é possível que a próxima página de registros esteja encontrando algum problema específico, como:

  • erro em algum metadado de artigo, edição, seção ou autor;
  • caractere inválido ou XML malformado;
  • problema em plugin relacionado ao OAI, JATS, DRIVER ou outro formato de metadados;
  • estouro de tempo de execução, memória ou timeout no Apache/PHP/PHP-FPM;
  • consulta muito pesada ao gerar o próximo lote de registros.

O ideal é verificar o log exatamente no momento em que a URL retorna erro 500. Por exemplo:

tail -f /var/log/apache2/error.log

ou, dependendo do ambiente:

tail -f /var/log/php*/fpm.log

Também vale verificar o error_log do domínio, caso a hospedagem use cPanel, Plesk ou painel similar.

Procure por mensagens como:

PHP Fatal error
Allowed memory size exhausted
Maximum execution time exceeded
SQLSTATE
DOMDocument
XML
OAI

Como teste, sugiro também:

  1. limpar os caches pelo painel administrativo do OJS:
    Administração do Site > Funções Administrativas > Limpar Caches de Dados e Limpar Cache de Template;

  2. testar a coleta inicial, sem usar token antigo:

/oai?verb=ListRecords&metadataPrefix=oai_dc
  1. reduzir temporariamente o tamanho do lote OAI no config.inc.php, para facilitar a identificação do registro problemático:
[oai]
oai = On
oai_max_records = 25

Depois de alterar, limpe os caches e teste novamente.

  1. se houver plugins OAI adicionais habilitados, como JATS, DRIVER ou formatos extras de metadados, desabilite temporariamente para testar, principalmente se a EBSCO estiver utilizando apenas oai_dc;

  2. se o log apontar para um artigo, seção ou edição específica, revise os metadados desse item: título, resumo, autores, idioma, seção, DOI e caracteres especiais.

Em resumo, antes de reindexar, eu investigaria o erro 500 pelo log do servidor, pois o problema provavelmente está na geração da próxima página do OAI-PMH ou em algum registro específico retornado naquele lote.

1 curtida