Esta página fornece informações sobre como solucionar problemas de replicação.
A replicação (replicação não reversa) está falhando por algum motivo.
Há vários motivos para a replicação falhar. Este artigo explica a abordagem que se pode adotar ao analisar essas questões.
As replicações estão sendo acionadas ao clicar no botão Ativar? Se NÃO, faça o seguinte:
As replicações estão sendo enfileiradas nas filas do agente de replicação?
Para verificar isso, acesse /etc/replication/agents.author.html e clique nos agentes de replicação para verificar.
Se uma fila de agente ou algumas filas de agente estiverem travadas:
A fila mostra o status bloqueado? Em caso afirmativo, a instância de publicação não está em execução ou não está totalmente responsiva? Verifique a instância de publicação para ver o que há de errado com ela (ou seja, verifique os registros e veja se há um erro OutOfMemory ou algum outro problema). Então, se for apenas lento, pegue os despejos de thread e analise-os.
O status da fila mostra A fila está ativa - # pendente? Basicamente, o trabalho de replicação pode estar preso em uma leitura de soquete aguardando a resposta da instância pública ou do dispatcher. Isso pode significar que a instância de publicação ou o dispatcher está com carga alta ou preso em um bloqueio. Tire lixeiras do autor e publique neste caso.
Se todas as filas de agente estiverem travadas
É possível que um determinado conteúdo não possa ser serializado em /var/Replication/data devido a danos no repositório ou a algum outro problema. Verifique se há um erro relacionado no logs/error.log. Para eliminar o item de replicação incorreto, faça o seguinte:
Pode haver algo errado com o envio de filas de trabalho da estrutura de eventos. Tente reiniciar o pacote org.apache.sling.evento no /system/console.
Pode ser que o processamento de trabalho esteja completamente desligado. Você pode verificar isso em Console do Felix na guia Eventos do Sling. Verifique se ele é exibido - Apache Sling Event (O PROCESSAMENTO DE TAREFA ESTÁ DESATIVADO!)
Também pode ser que a configuração DefaultJobManager fique em um estado inconsistente. Isso pode ocorrer quando alguém modifica manualmente a configuração do "Apache Sling Job Evento Handler" por meio do OSGiconsole (por exemplo, desative e reative a propriedade "Job Processing Enabled" e Salve a configuração).
Criar um arquivo Replication.log
Às vezes, pode ser muito útil definir todos os logs de replicação a serem adicionados em um arquivo de log separado no nível DEBUG. Para fazer isso:
Vá para https://host:port/system/console/configMgr
e faça logon como administrador.
Localize a fábrica do Apache Sling Logging Logger e crie uma instância clicando no botão + à direita da configuração de fábrica. Isso criará um novo agente de log.
Defina a configuração desta forma:
Se você suspeitar que o problema esteja relacionado ao envio de eventos/trabalhos de qualquer forma, você também poderá adicionar esse pacote java em categoria:org.apache.sling.evento
Às vezes, pode ser adequado pausar a fila de replicação para reduzir a carga no sistema do autor, sem desativá-la. Atualmente, isso só é possível por meio de uma hack de configuração temporária de uma porta inválida. A partir da versão 5.4, você pode ver o botão de pausa na fila do agente de replicação, ele tem algumas limitações
As permissões de página não são replicadas porque são armazenadas nos nós aos quais o acesso é concedido, não com o usuário.
Em geral, as permissões de página não devem ser replicadas do autor para publicação e não são, por padrão. Isso porque os direitos de acesso devem ser diferentes nesses dois ambientes. Portanto, é recomendável configurar ACLs na publicação separadamente do autor.
Em alguns casos, a fila de replicação é bloqueada ao tentar replicar informações de namespace da instância do autor para a instância de publicação. Isso ocorre porque o usuário de replicação não tem jcr:namespaceManagement
privilégio. Para evitar esse problema, verifique se:
jcr:namespaceManagement
privilégio no nível do repositório. Você pode conceder o privilégio da seguinte maneira:http://localhost:4502/crx/de/index.jsp
) como administrador.jcr:namespaceManagement
na lista de privilégios.