A solução alternativa para o SIGSEGV ocorre em com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl

Problema

Às vezes, há falhas da VM Java com um SEGV, todas ocorrendo dentro do código JIT compilado em com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl. É possível que exista um bug de Java aqui, mas um que parece afetar um conjunto de métodos muito específico.

Há uma alternativa ao especificar parâmetros JIT para essa classe que parece aliviar o problema. Essa tarefa é capturar e documentar a solução alternativa e as circunstâncias em que ela se aplica.

Quem precisa dessa solução alternativa?

  • Você está usando a extensão do Social Communities com um provedor do Social Cloud Storage configurado.
  • Você está executando o AEM no Linux de 64 bits usando a VM Java do Oracle de 64 bits, versão 1.7.
  • Você está tendo problemas com a VM Java no Adobe Experience Manager.
  • As falhas da VM Java são relatadas em com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl
    . As falhas da VM Java são acompanhadas por um arquivo hs_err_pid<<PROCESS-ID>>.log que aparece no diretório crx-quickstart do CQ. As informações básicas sobre a causa do travamento da VM Java aparecerão nesse arquivo. Procure por algo assim no caso das falhas que essa solução alternativa aborda:
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00002aaaabf4d59c, pid=17837, tid=1276991808
#
# JRE version: Java(TM) SE Runtime Environment (7.0_65-b17) (build 1.7.0_65-b17)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.65-b04 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# J 3816 C2 com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl.readDocument(Ljava/lang/String;)Ljava/util/Map; (287 bytes) @ 0x00002aaaabf4d59c [0x00002aaaabf4d4e0+0xbc]

A informação crítica é a última linha neste exemplo, que mostra que o quadro problemático envolve com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl, um componente do conector do serviço de nuvem.

Qual é a solução alternativa?

A solução alternativa usa duas abordagens: usar uma versão da VM Java menos propensa a apresentar o problema e use uma opção da VM Java para desativar a compilação nativa do código do problema específico.
No momento da publicação desta nota, a versão mais recente do Java 1.7 disponível no Oracle é a 1.7_65. A recomendação desta solução alternativa é atualizar para a 1.7_65 de qualquer versão anterior.
Usando a versão 1.7_65, a solução alternativa é desabilitar a compilação just in time (JIT) de uma classe e método problemático específicos através da opção Java -XX:CompileCommand=exclude. Especificamente, -XX:CompileCommand=exclude, com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl::readDocument"

Como faço para implementar essa solução alternativa no meu ambiente?

Essa implementação exigirá a verificação e, possivelmente, a atualização da versão do Java que você tem instalada e a atualização do script de inicialização usado para iniciar o AEM. Para atualizar o Java, consulte a documentação da Oracle sobre a escolha, download, instalação e configuração do jdk1.7.0_65 de 64 bits para Linux x86 e x64.

Geralmente, recomenda-se que o AEM seja iniciado por meio dos scripts de inicialização localizados em crx-quickstart/bin/start. É comum, no entanto, empregar scripts de inicialização personalizados. No caso em que crx-quickstart/bin/start está sendo usado, adicione a seguinte opção:

CQ_JVM_OPTS="${CQ_JVM_OPTS} -XX:CompileCommand=exclude,com.adobe.cq.social.datastore.as.impl.UGCCDataServiceImpl::readDocument"


NOTA: procure na pasta bin/start padrão e veja onde exatamente isto está.

 Adobe

Receba ajuda com mais rapidez e facilidade

Novo usuário?