1.0 Problemas e Limitações Conhecidos
1.1 Generic Log Adapter
1.1.1 Problemas ao Executar Regras do Generic Log Adapter ®™ Runtime Environment (JRE) v1.4.1 da IBM
1.2 Data Collection Engine
1.2.1 O Texto do Console é Truncado ao Definir Perfis de um Aplicativo Java em um Sistema DBCS
1.2.2 A Cópia de Arquivo do Data Collection Engine Não Funciona no HP 11i
1.2.3 O Data Collection Engine Relata o Erro "sh: sysdef: não localizado" no Solaris
1.2.4 O Data Collection Engine em Execução com um Sun JVM no Linux™ entra em um loop infinito
1.2.5 A Extensão do Agente Não Funciona em Sistemas iSeries™
1.2.6 Não São Permitidas Várias Instâncias do Data Collection Engine em uma Máquina
1.3 Log and Trace Analyzer
1.3.1 Impossível Definir um Caminho de Trabalho ao Definir Perfis
1.3.2 Agentes e Processos São Perdidos ao Fechar o Monitor de Definição de Perfis
1.3.3 Atualizar Visualizações Pode Não Funcionar Dependendo da Seleção no Monitor de Definição de Perfis
1.4 Probekit
1.4.1 O Programa ProbeInstrumenter Separa o Diretório META-INF Inteiro de Arquivos jar
1.4.2 O Programa ProbeInstrumenter Emite uma Exceção ao Instrumentar Algumas Classes
1.5 Ferramenta de Definição de Perfis
1.5.1 Problema com a Coleta de Lixo ao Utilizar o IBM JDK 1.4.1
1.5.2 Com o Sun JVM, Algumas Chamadas de Método Não São Rastreadas
1.5.3 Definir Perfis no Solaris Utilizando o Sun JDK 1.4.x Pode Travar a JVM
1.5.4 Possível Travamento ao Executar no Modo Independente com STACK_INFORMATION=contiguous no Solaris
1.5.5 Valores Negativos de Tempo Limite para Eventos WAIT e WAITED
1.5.6 Dumps Incorretos do Monitor com o IBM JDK 1.4.2
1.6 Console de Estatísticas
1.7 Teste
1.7.1 Problemas Comuns de Teste
1.7.1.1 Os Testes de JUnit, Manuais e de URL Não Funcionam no iSeries
1.7.1.2 A Implementação e Execução Automatizadas de Testes Utilizando Plataformas Heterogêneas Não Funcionam
1.7.1.3 Execução Remota com Implementação Manual
1.7.1.4 Acesso ao Datapool
1.7.2 Teste de URL do Hyades
1.7.2.1 Relatórios de Tempo de Resposta e de Proporção de Número de Visitas do URL Não São Visíveis no Navegador de Testes
1.7.2.2 O Gravador de Testes de URL Exibe "IWAT3042E Gravação Interrompida Devido à Exceção: Nula"
1.7.2.3 Executando Testes de URL como Testes de JUnit
1.7.2.4 Executando a Amostra do Teste de URL
1.7.2.5 O readme.html da Amostra de Teste de URL Refere-se Incorretamente a 'Teste de Componente'
O IBM JDK 1.4.1 fornecido em 2003 causa problemas no analisador de log de acesso ao Apache baseado em regras.
O SR2 (Service Release), e superior, é necessário ao executar o JRE (Java Runtime Environment) v1.4.1 da IBM para utilizar o Generic Log Adapter e/ou ao importar arquivos de log no Hyades utilizando um analisador de arquivo de log baseado em regras.
Ao definir perfis de um aplicativo Java remoto no Eclipse em um sistema DBCS (por exemplo, Chinês Tradicional, Chinês Simplificado, Japonês, Coreano), a saída do console é exibida como texto truncado. Esse problema ocorre em todas as plataformas, exceto Z/OS e iSeries™.
Para solucionar esse problema, inclua um argumento de Java VM -Dconsole.encoding=UTF8 ao ativar o aplicativo Java remoto. Isso assegurará codificação apropriada ao transferir a saída do console do lado remoto de volta para o workbench do Eclipse.
A cópia de arquivo não funciona porque o servidor de arquivos não inicializa. Isso ocorre porque a biblioteca JVM libjvm.sl não está sendo carregada no tempo de execução, que por sua vez causa a não execução do servidor de arquivos.
Para solucionar isso, a versão de correção do linker PHSS_30049, ou superior, é necessária. A versão do linker na correção 30049 é a seguinte:
/bin/ld:
$Revisão: 1.5 $
HP aC++ B3910B X.03.37.01 Biblioteca Iostream Clássica
HP aC++ B3910B X.03.37.01 Biblioteca de Suporte ao Idioma
ld_msgs.cat: $Revisão: 1.5 $
92453-07 linker command s800.sgs ld PA64 B.11.38 REL 031217
Para verificar o número da versão: what /bin/ld
Para listar as correções instaladas: swlist -l fileset
Execute o grep para "ld" para obter o número da versão para a correção cumulativa das ferramentas ld e linker.O Hyades Data Collection Engine utiliza o comando sysdef para obter o tamanho máximo para um buffer de memória compartilhada em seu sistema. Se o Data Collection Engine não puder executar o sysdef, ele utilizará o dataChannelSize="30M" especificado no arquivo <RAServer>/plugins/org.eclipse.hyades.datacollection/pluginconfig.xml. O seguinte erro será relatado no console no qual o RAServer.exe foi ativado:
sh: sysdef: não localizadoPara solucionar esse problema, inclua o diretório /usr/sbin, que contém o sysdef, na variável PATH.
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO" text="Serviço iniciando"/>Para solucionar esse problema, defina LD_LIBRARY_PATH apontando para todos os arquivos .so antes de iniciar o Data Collection Engine. Por exemplo, antes de executar o RAServer, emita este comando:
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO"
text="Plugin carregado com êxito: org.eclipse.hyades.datacollection"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO"
text="Plugin carregado com êxito: org.eclipse.hyades.logging.parsers"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO"
text="Plugin carregado com êxito: org.eclipse.hyades.test"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO"
text="Configuração ativa definida para: padrão"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO"
text="Configuração carregada: padrão"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMAÇÃO"
text="Serviço iniciado com êxito"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor parando"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor interno fechado"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor externo fechado"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor parando"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor interno fechado"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor externo fechado"/>
export
LD_LIBRARY_PATH=/opt/j2sdk1.4.2_04/jre/lib/i386/server:/opt/j2sdk1.4.2_04/jre/li
b/i386
As extensões do agente não funcionam em sistemas iSeries.
Para solucionar esse problema, antes de iniciar o Data Collection Engine na máquina iSeries, execute o seguinte comando:
ADDLIBLE LIBNAMEem que LIBNAME é o nome da biblioteca que contém o código de extensão do agente. Isso permitirá que o Data Collection Engine localize e carregue a biblioteca.
Apenas uma instância do Data Collection Engine pode ser instalada em uma máquina. Isso significa que se você tiver instalado o mecanismo ou uma versão estendida do mecanismo com outro produto, será necessário desinstalar essa instância para que uma nova instância funcione corretamente. Por exemplo, alguns produtos IBM WebSphere Studio ou IBM Rational® ou o Autonomic Computing Toolkit da developerWorks ®, incluem instalações opcionais do Hyades Data Collection Engine sob o nome Agent Controller.
Defeito do Bugzilla: 61754
Atualmente, não há como definir um caminho de trabalho arbitrário ao
configurar um aplicativo para definição de perfis.
O campo Diretório de Trabalho fornecido na guia Argumentos para
o tipo Aplicativo Java não está
sendo processado e enviado corretamente pelo ativador do workbench
para o Data Collection Engine.
Para o tipo Aplicativo Java Externo, não há nenhum campo
disponível para especificar um caminho de trabalho.
Para solucionar esse problema, siga estas etapas:
Defeito do Bugzilla: 51161
Se dados não salvos forem exibidos na visualização Monitor de Definição
de Perfis, como agentes ou processos, eles serão perdidos quando
a visualização for fechada. É recomendável que todo o conteúdo seja salvo
no Monitor de Definição de Perfis antes da
visualização ser fechada.
Nota: Abrir uma nova perspectiva, em seguida, alternar de volta
para a perspectiva Definição de Perfis e Logs não causará
perda de dados.
Defeito do Bugzilla: 71567
Quando a opção Efetuar Link com o Visualizador for desativada no Monitor
de Definição de Perfis, a ação Atualizar Visualizações (na mesma
barra de ferramentas) funcionará apenas quando a seleção atual no Monitor
de Definição de Perfis corresponder à visualização atualmente
aberta.
Para solucionar esse problema, execute um dos seguintes procedimentos:
Se o diretório META-INF do arquivo jar contiver arquivos diferentes do arquivo MANIFEST.MF, siga estas etapas para preservar esses arquivos no arquivo jar instrumentado:
jar xf yourfile.jar META-INF
jar uf yourfile.jar META-INF
Defeito do Bugzilla:68435
Durante a instrumentação de algumas classes, o programa "ProbeInstrumenter"
do Probekit emite uma exceção com a seguinte mensagem de
erro:
Exceção do Probe Kit número 4 do local 3
Essa exceção seria causada pelos métodos que contêm códigos de bytes não alcançáveis após a última instrução alcançável de um método. Alguns compiladores Java produzem esse código.
Atualmente não existe solução alternativa para esse problema.
Se o aplicativo do usuário utilizar uma quantidade extremamente grande de espaço de heap, a solicitação de Coletar Referências de Objeto ou Executar GC poderá possivelmente causar travamento da JVM com a seguinte mensagem de erro:
**Sem memória, interrompendo**
*** estado de alarme: JVMCI023: Impossível alocar memória para coletar dump de heap no jvmpi_heap_dump
término anormal do programa
Você pode tentar solucionar isso executando sem o parâmetro -Xmx, se estiver atualmente executando com ele.
Defeito do Bugzilla: 69051
Utilizando o Sun JDK no Windows, determinadas chamadas de método em programas Java não estão sendo rastreadas pela JVMPI.
Não há uma solução alternativa.
Defeito do Bugzilla:56404
Ao definir perfis no Solaris utilizando o Sun JDK 1.4.x, a JVM pode
travar. Isso ocorre devido a um erro no Sun JVM.
Para solucionar esse problema, utilize apenas um dos seguintes conjuntos de definição de perfis:
O problema surge quanto você os utiliza em combinação ou se a informação "Mostrar nível de instância" estiver ativada.
Defeito do Bugzilla:
50090
Ao definir perfis no Solaris, você pode encontrar problemas com a definição de
perfis independentes. O problema ocorre apenas quando STACK_INFORMATION=contiguous
(ou boundaryAndContiguous) e TRACE_MODE=full. Esse problema pode resultar
em travamento da JVM.
Para solucionar esse problema com STACK_INFORMATION=contiguous, defina TRACE_MODE=noObjectCorrelation. O problema não ocorre quando STACK_INFORMATION=none ou STACK_INFORMATION=normal.
Defeito do Bugzilla: 63969
Ao executar com o IBM 1.4.2 JDK, com a opção de perfil jvmpi do Hyades 'MONITOR_MODE=all' (no modo independente), poderão aparecer atributos negativos de tempo limite nos elementos monitorWait e monitorWaited em seus rastreios. Eles são, na verdade, valores de tempo limite extremamente altos convertidos como inteiros positivos de 64 bits. Esse erro é resultado de um erro do JDK.
Defeitos do Bugzilla: 65193 e 72180
Devido a um erro do JDK, ao executar o Hyades no modo independente com a opção de perfil jvmpi 'MONITOR_MODE=all', você poderá obter dumps de monitor incorretos. Especificamente para o erro 65193, isso ocorre quando o argumento de VM '-Xj9' é utilizado.
N/D
A implementação/execução automatizadas de testes em sistemas remotos executados em plataformas heterogêneas (Windows para Linux ou Unix e vice-versa) não funcionam. Informações sobre como um teste pode ser executado remotamente podem ser localizadas na seção Execução Remota deste documento.
Defeito do Bugzilla:68910
Um uso comum de um Teste (URL, JUnit ou Manual) é deixar o workbench
(UI do Eclipse) instalado em uma máquina baseada no Windows e a execução
remota em um sistema Linux ou Unix. Atualmente, a implementação automatizada
não funciona entre as plataformas. Entretanto, os testes ainda podem ser
executados remotamente.
O arquivo que representa o teste a ser executado deve ser transferido
(mais provavelmente utilizando FTP) do sistema no qual foi criado para o
sistema no qual será executado. O Coletor
de Dados, ou RAC, deve ser configurado para apontar para o recurso de teste
que foi transferido.
Ao ser compilado, o código de byte de um teste é armazenado no diretório bin do projeto Java no qual o teste foi criado. Um exemplo seria:
[ECLIPSE_HOME]/workspace/project1/bin/test/URLTest.class
Um método para empacotar o arquivo acima para execução em um sistema remoto é criar um arquivo jar. Os comandos a seguir mostram como isso pode ser feito.
"cd [ECLIPSE_HOME]/workspace/project1/bin"
"jar -cf test.jar test"
O arquivo test.jar pode ser transferido para a estrutura de diretórios do Coletor de Dados da máquina remota.
Em seguida, o arquivo [RAC_HOME]/config/serviceconfig.xml deve ser ajustado para apontar para o test.jar, conforme mostrado a seguir.
<AgentControllerEnvironment configuration="default">
...
...
<Variable name="CLASSPATH" position="append" value="%RASERVER_HOME%/test/test.jar"/>
</AgentControllerEnvironment>
Quando o teste for ativado a partir do workbench, o Coletor de Dados terá um caminho de classe que aponta para o local de teste e o teste será executado.
Defeito do Bugzilla:68911
A documentação que descreve o acesso a um datapool a partir de um teste
do Hyades omite uma etapa
e contém uma amostra de código que não funciona totalmente.
Os jars a seguir precisam ser incluídos no caminho de construção Java.
([ECLIPSE_HOME] é o diretório no qual o Eclipse foi instalado.
[ECLIPSE_HOME]/plugins/org.eclipse.hyades.models.common_3.0.0/common_model.jar
[ECLIPSE_HOME]/plugins/org.eclipse.hyades.test.datapool_3.0.0/datapool_api.jar
[ECLIPSE_HOME]/plugins/org.eclipse.emf.ecore_2.0.0/runtime/ecore.jar
[ECLIPSE_HOME]/plugins/org.eclipse.emf.common_2.0.0/runtime/common.jar
O trecho de código a seguir demonstra como acessar um datapool e extrair as informações adequadamente.
IDatapoolFactory dpFactory = new Common_DatapoolFactoryImpl();
IDatapool datapool = dpFactory.load(new File("d:\\hyades3.0\\workspace\\testproj\\dpoo1.datapool"), false);
IDatapoolIterator iter = dpFactory.open(datapool, "org.eclipse.hyades.datapool.DatapoolIteratorSequentialPrivate");
iter.dpInitialize(datapool, -1);
while (!iter.dpDone())
{
String firstName = iter.dpCurrent().getCell("First Name").getStringValue();
// seu código aqui
iter.dpNext();
}
Defeito do Bugzilla:68553
Os relatórios de tempo de resposta e de proporção de número de visitas do URL não
são visíveis no navegador de Testes. Os relatórios podem ser localizados, abrindo o projeto sob o qual
foram criados na perspectiva 'Recurso'.
Defeito do Bugzilla:66199
Quando o Eclipse for ativado com o argumento '-Xj9', após várias
gravações, a visualização 'Controle do Gravador' exibirá "IWAT3042E
gravação interrompida devido à exceção: nula". A solução alternativa é fechar
e reabrir o Eclipse.
Os Testes de URL do Hyades podem ser executados como testes JUnit. Para fazer isso, as seguintes entradas devem ser incluídas no caminho de construção Java do projeto que contém o Teste de URL:
[ECLIPSE_HOME]/plugins/org.eclipse.hyades.logging.core_3.0.0/hlcore.jar
[ECLIPSE_HOME]/plugins/org.eclipse.hyades.logging.core_3.0.0/hlcbe101.jar
[ECLIPSE_HOME]/plugins/org.eclipse.emf.ecore_2.0.0/runtime/ecore.jar
[ECLIPSE_HOME]/plugins/org.eclipse.hyades.logging.java14_3.0.0/hl14.jar
[ECLIPSE_HOME]/plugins/org.eclipse.emf.common_2.0.0/runtime/common.jar
A Amostra do Teste de URL não será executada diretamente após sua criação. Dois artefatos devem ser configurados para que ela seja executada com êxito. A variável CLASSPATH do artifact1 deve apontar para o local do espaço de trabalho na máquina:
[ECLIPSE_HOME]/eclipse/workspace/URL Test Sample/bin
A variável ROOTDIR do location1 deve apontar para o diretório que representa o espaço de trabalho
[ECLIPSE_HOME]/workspace
O nome padrão da Amostra de Teste de URL contém espaços. Isso pode causar problemas para determinados sistemas operacionais. O nome da amostra pode ser alterado durante a criação.
Defeito do Bugzilla:68910
A página da Web da Amostra de Teste de URL refere-se a uma seção da ajuda on-line, denominada 'Teste de Componente', que não existe. A página da Web deveria referir-se à seção 'Teste' da ajuda on-line.
Retornar para o Arquivo Leia-me Principal