1.0 Limitaciones y problemas conocidos
1.1 Generic Log Adapter
1.1.1 Problemas al ejecutar las reglas de Generic Log Adapter utilizando JavaTM Runtime Environment (JRE) v1.4.1 de IBM(R)
1.2 Motor de recogida de datos
1.2.1 El texto de la consola aparece cortado al perfilar una aplicación Java en un sistema DBCS
1.2.2 La copia del archivo del Motor de recogida de datos no funciona en HP 11i
1.2.3 El motor de recogida de datos informa de un error "sh: sysdef: no encontrado" en Solaris
1.2.4 El Motor de recogida de datos entra en un bucle infinito al ejecutarse con una JVM Sun en LinuxTM
1.2.5 La ampliación de agente no funciona en sistemas iSeriesTM
1.2.6 No se permiten varias instancias del Motor de recogida de datos en un sistema
1.3 Analizador de anotaciones y rastreo
1.3.1 No se puede establecer una vía de acceso de trabajo al perfilar
1.3.2 Los agentes y los procesos se pierden al cerrar el Supervisor de perfilado
1.3.3 Renovar vistas no funcionará dependiendo de la selección en el Supervisor de perfilado
1.4 Kit de prueba
1.4.1 El programa ProbeInstrumenter arranca todo el directorio META-INF de los archivos jar
1.4.2 El programa ProbeInstrumenter lanza una excepción al instrumentar algunas clases
1.5 Herramienta de perfilado
1.5.1 Problema con la recogida de basura al utilizar JDK 1.4.1 de IBM
1.5.2 Con la JVM de Sun, algunas llamadas de método no se rastrean
1.5.3 Al perfilar en Solaris utilizando JDK 1.4.x de Sun puede producirse una anomalía de JVM
1.5.4 Posible anomalía al ejecutar en modalidad autónoma con STACK_INFORMATION=contiguous en Solaris
1.5.5 Valores de tiempo de espera negativos para los eventos WAIT y WAITED
1.5.6 Vuelcos de supervisor incorrectos con IBM JDK 1.4.2
1.6 Consola estadística
1.7 Prueba
1.7.1 Temas de prueba comunes
1.7.1.1 Las pruebas JUnit, Manual y URL no funcionan en iSeries
1.7.1.2 El despliegue y la ejecución automatizados de pruebas con plataformas heterogéneas no funciona
1.7.1.3 Ejecución remota con el despliegue manual
1.7.1.4 Acceso a la agrupación de datos
1.7.2 Prueba de URL de Hyades
1.7.2.1 Los informes de tiempo de respuesta y cadencia de aciertos de URL no son visibles en el navegador de prueba
1.7.2.2 El registro de prueba de URL muestra "IWAT3042E registro cancelado debido a excepción: null"
1.7.2.3 Ejecutar pruebas de URL como pruebas de JUnit
1.7.2.4 Ejecutar el ejemplo de prueba de URL
1.7.2.5 El ejemplo de prueba de URL readme.html hace referencia incorrectamente a 'Component Test'
El software IBM JDK 1.4.1 de 2003 causa problemas en el analizador de anotaciones de acceso de Apache basado en reglas.
Se necesita el Service Release (SR2) y posteriores al ejecutar Java Runtime Environment (JRE) v1.4.1 de IBM para utilizar Generic Log Adapter y/o importar archivos de anotaciones en Hyades utilizando un analizador de archivos de anotaciones basado en reglas.
Al perfilar una aplicación Java remota en Eclipse en un sistema DBCS (por ejemplo en chino tradicional, chino simplificado, japonés, coreano), la salida de consola aparece como texto cortado. Este problema pasa en todas las plataformas excepto en Z/OS e iSeriesTM.
Para solucionar este problema, añada un argumento de VM Java -Dconsole.encoding=UTF8 al lanzar la aplicación Java remota. Esto asegurará una codificación adecuada al transferir la salida de la consola desde el sitio remoto al entorno de trabajo de Eclipse.
La copia de archivo no funciona porque el servidor de archivos no arranca. Esto es debido a que la biblioteca de JVM libjvm.sl no se carga en tiempo de ejecución, lo que a su vez es causa de que no se ejecute el servidor de archivos.
Para solucionar este problema, se necesita la versión de parche enlazador PHSS_30049 o superior. La versión de enlazador del parche 30049 es como sigue:
/bin/ld:
$Revision: 1.5 $
HP aC++ B3910B X.03.37.01 Classic Iostream Library
HP aC++ B3910B X.03.37.01 Language Support Library
ld_msgs.cat: $Revision: 1.5 $
92453-07 linker command s800.sgs ld PA64 B.11.38 REL 031217
Para comprobar el número de versión: what /bin/ld
Para listar los parches instalados: swlist -l fileset
Busque "ld" para obtener el número de versión para el ld acumulativo y el parche de herramientas enlazador.El Motor de recogida de datos de Hyades utiliza el mandato sysdef para obtener el tamaño máximo para un almacenamiento intermedio de memoria en el sistema. Si el Motor de recogida de datos no puede ejecutar sysdef, utilizará dataChannelSize="30M" especificado en el archivo <RAServer>/plugins/org.eclipse.hyades.datacollection/pluginconfig.xml. E error siguiente se mostrará en la consola en la que se lanzó RAServer.exe:
sh: sysdef: no encontradoPara solucionar este problema, añada el directorio /usr/sbin que contiene sysdef a la variable PATH.
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN" text="Iniciando servicio"/>Para solucionar este problema, establezca que LD_LIBRARY_PATH apunte a todos los archivos .so antes de iniciar el Motor de recogida de datos. Por ejemplo, antes de ejecutar RAServer, emita este mandato:
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN"
text="Conector cargado satisfactoriamente: org.eclipse.hyades.datacollection"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN"
text="Conector cargado satisfactoriamente: org.eclipse.hyades.logging.parsers"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN"
text="Conector cargado satisfactoriamente: org.eclipse.hyades.test"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN"
text="Configuración activa establecida en: default"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN"
text="Configuración cargada: default"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="INFORMACIÓN"
text="Servicio iniciado satisfactoriamente"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Deteniendo servidor"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor interno cerrado"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor externo cerrado"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Deteniendo servidor"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor interno cerrado"/>
<SERVER_MSG time="2004:6:3:17:42:49" severity="AVISO" text="Servidor externo cerrado"/>
export
LD_LIBRARY_PATH=/opt/j2sdk1.4.2_04/jre/lib/i386/server:/opt/j2sdk1.4.2_04/jre/li
b/i386
Las ampliaciones de agente no funcionan en los sistemas iSeries.
Para solucionar este problema, antes de iniciar el Motor de recogida de datos en el sistema iSeries, ejecute el mandato siguiente:
ADDLIBLE LIBNAMEdonde LIBNAME es el nombre de biblioteca que contiene el código de ampliación de agente. Esto permitirá que el Motor de recogida de datos busque y cargue la biblioteca.
Solo se puede instalar una instancia del Motor de recogida de datos en un sistema. Esto significa que si ha instalado el motor o una versión ampliada del motor con otro producto, deberá desinstalar esa instancia para que la nueva instancia funcione correctamente. Por ejemplo, algunos productos de IBM WebSphere Studio o IBM Rational(R) o Autonomic Computing Toolkit de developerWorks(R) incluyen instalaciones opcionales del Motor de recogida de datos de Hyades bajo el nombre Agent Controller.
Defecto en Bugzilla: 61754
Actualmente no hay forma de establecer una vía de acceso de trabajo al configurar una aplicación a
perfilar.
El lanzador no procesa ni envía correctamente el campo Directorio de trabajo proporcionado
en la pestaña Argumentos del tipo de aplicación Java no se procesa ni se envía correctamente del
entorno de trabajo al motor de recogida de datos.
Para el tipo Aplicación Java externa, no hay ningún campo disponible para especificar una vía de
acceso de trabajo.
Para solucionar este problema, siga estos pasos:
Defecto en Bugzilla: 51161
Si en la vista Supervisor de perfilado se visualizan datos sin guardar como por ejemplo agentes o
procesos, se perderán cuando se cierre la vista. Es recomendable guardar todo el contenido del
Supervisor de perfilado antes de cerrar la vista.
Nota: al abrir una perspectiva nueva y después volver a la perspectiva Perfilado y
anotaciones no se perderán datos.
Defecto en Bugzilla: 71567
Cuando la opción Enlazar con visor esté inhabilitada en el Supervisor de perfilado, la acción
Renovar vistas (en la misma barra de herramientas) solo funcionará cuando la selección actual del
Supervisor de perfilado corresponda a la vista abierta actualmente.
Para solucionar este problema, realice una de las acciones siguientes:
Si el directorio META-INF del archivo jar contiene algo más que el archivo MANIFEST.MF, siga estos pasos para conservar esos archivos en el archivo jar instrumentado:
jar xf yourfile.jar META-INF
jar uf yourfile.jar META-INF
Defecto en Bugzilla:68435
Al instrumentar algunas clases, el programa "ProbeInstrumenter"
de Probekit lanza una excepción con el mensaje de error siguiente:
Excepción Kit de prueba número 4 de la ubicación 3
Una causa para esta excepción consiste son los métodos que contienen códigos de byte no alcanzables después de la última instrucción alcanzable de un método. Algunos compiladores Java generan ese código.
Actualmente no hay ninguna solución para este problema.
Si la aplicación del usuario utiliza una cantidad muy grande de espacio de almacenamiento dinámico, al solicitar Recoger referencias de objeto o Ejecutar GC la JVM puede sufrir una anomalía con el mensaje de error siguiente:
**Memoria insuficiente, terminando anormalmente**
*** panic: JVMCI023: No se puede asignar memoria para recoger el vuelco de almacenamiento dinámico en jvmpi_heap_dump
terminación anormal del programa
Puede intentar solucionar esto ejecutando sin el parámetro -Xmx, si actualmente está ejecutándolo.
Defecto en Bugzilla: 69051
Al utilizar el JDK de Sun en Windows, algunas llamadas de método de los programas Java no se rastrean con JVMPI.
No hay ninguna solución conocida.
Defecto en Bugzilla:56404
Al perfilar en utilizando JDK 1.4.x de Sun, puede producirse una anomalía de JVM. Esto es debido a
un error en la JVM de Sun.
Para solucionar este problema, utilice solamente uno de los conjuntos de perfilado siguientes:
El problema surge si los utiliza en combinación o si la información "Mostrar nivel de instancia" está activada.
Defecto en Bugzilla:
50090
Al perfilar en Solaris, pueden surgir problemas con el perfilado autónomo. El problema solo surge
con STACK_INFORMATION=contiguous (o boundaryAndContiguous) y TRACE_MODE=full. Este problema puede
producir una anomalía de JVM.
Para solucionar este problema con STACK_INFORMATION=contiguous, set TRACE_MODE=noObjectCorrelation. El problema no surge con STACK_INFORMATION=none o STACK_INFORMATION=normal.
Defecto en Bugzilla: 63969
Al ejecutar con IBM 1.4.2 JDK, con la opción de perfil jvmpi de Hyades 'MONITOR_MODE=all' (en modalidad autónoma), puede ver atributos de tiempo de espera negativos en los elementos monitorWait y monitorWaited en su rastreo. En realidad se trata de valores de tiempo de espera muy grandes convertidos temporalmente en enteros positivos de 64 bits. Este problema es el resultado de un problema de JDK.
Defectos en Bugzilla: 65193 y 72180
Debido a un problema de JDK, al ejecutar Hyades en modalidad autónoma con la opción de perfilado jvmpi 'MONITOR_MODE=all', puede obtener vuelcos de supervisor incorrectos. En concreto, para 65193, esto ocurre cuando se utiliza el argumento de VM '-Xj9'.
N/D
El despliegue/la ejecución automatizados de pruebas en sistemas remotos con plataformas distintas (de Windows a Linux o Unix y viceversa) no funciona. Encontrará información acerca de cómo ejecutar remotamente una prueba en la sección Ejecución remota de este documento.
Defecto en Bugzilla:68910
Una utilización común de una Prueba Test (URL, JUnit o Manual) consiste en tener el entorno de
trabajo (Eclipse UI) instalado en una máquina basada en Windows y la ejecución remota en un sistema
Linux o Unix. Actualmente, el despliegue automatizado no funciona entre plataformas cruzadas. Sin
embargo, las pruebas pueden seguir ejecutándose remotamente.
El archivo que representa la prueba a ejecutar debe transferirse (probablemente mediante FTP) desde
el sistema en que se creó al sistema en que se ejecutará. El Recogedor de datos o RAC debe
configurarse para señalar el activo de prueba transferido.
Cuando se compila el código de bytes para una prueba, se almacena en el directorio bin del proyecto Java en el que se creó la prueba. Un ejemplo sería:
[INICIO_ECLIPSE]/workspace/project1/bin/test/URLTest.class
Un método de empaquetar el archivo anterior para ejecutarlo en un sistema remoto consiste en crear un archivo a jar. Los mandatos siguientes muestran como puede hacerse esto.
"cd [INICIO_ECLIPSE]/workspace/project1/bin"
"jar -cf test.jar test"
El archivo test.jar puede transferirse a la estructura de directorios del Recogedor de datos del sistema remoto.
A continuación, debe ajustar el archivo [INICIO_RAC]/config/serviceconfig.xml para que señale a test.jar, tal como se muestra a continuación.
<Configuración de AgentControllerEnvironment="default">
...
...
<Nombre de variable="CLASSPATH" posición="append" valor="%INICIO_RASERVER%/test/test.jar"/>
</AgentControllerEnvironment>
Cuando la prueba se lanza desde el entorno de trabajo, el Recogedor de datos tendrá una vía de acceso de clases que señale la ubicación de prueba y se ejecutará la prueba.
Defecto en Bugzilla:68911
A la documentación que describe el acceso a una agrupación de datos desde una prueba Hyades le
falta un paso y contiene un ejemplo de código que no funciona completamente.
Los jars siguientes deben añadirse a la vía de acceso de construcción Java.
([INICIO_ECLIPSE] es el directorio en el que se ha instalado Eclipse.
[INICIO_ECLIPSE]/plugins/org.eclipse.hyades.models.common_3.0.0/common_model.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.hyades.test.datapool_3.0.0/datapool_api.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.emf.ecore_2.0.0/runtime/ecore.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.emf.common_2.0.0/runtime/common.jar
El fragmento de código siguiente muestra cómo acceder a una agrupación de datos y extraer información adecuadamente.
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();
// su código aquí
iter.dpNext();
}
Defecto en Bugzilla:68553
Los informes de tiempo de respuesta y cadencia de aciertos no son visibles en el navegador de
prueba. Los informes pueden encontrarse abriendo el proyecto bajo el que se crearon en la
perspectiva 'Recurso'.
Defecto en Bugzilla:66199
Cuando Eclipse se lanza con el argumento '-Xj9', después de varios registros la vista
'Control de registro' mostrará "IWAT3042E
registro cancelado debido a excepción: null". La solución consiste en cerrar y volver a abrir
Eclipse.
Las pruebas de URL de Hyades pueden ejecutarse como pruebas de JUnit. Para hacerlo, hay que añadir las entradas siguientes a la vía de acceso de construcción Java del proyecto que contiene la prueba de URL:
[INICIO_ECLIPSE]/plugins/org.eclipse.hyades.logging.core_3.0.0/hlcore.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.hyades.logging.core_3.0.0/hlcbe101.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.emf.ecore_2.0.0/runtime/ecore.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.hyades.logging.java14_3.0.0/hl14.jar
[INICIO_ECLIPSE]/plugins/org.eclipse.emf.common_2.0.0/runtime/common.jar
El ejemplo de prueba de URL no se ejecutará directamente después de su creación. Pueden configurarse dos artefactos para que se ejecute satisfactoriamente. La variable CLASSPATH de artifact1 debe señalar la ubicación del área de trabajo del sistema:
[INICIO_ECLIPSE]/eclipse/workspace/URL Test Sample/bin
La variable ROOTDIR de location1 debe señalar el directorio que representa el área de trabajo
[INICIO_ECLIPSE]/workspace
El nombre por omisión del ejemplo de prueba de URL contiene espacios. Esto puede causar problemas para determinados sistemas operativos. El nombre del ejemplo puede cambiarse cuando se crea.
Defecto en Bugzilla:68910
La página Web del ejemplo de prueba de URL hace referencia a una sección de la ayuda en línea llamada 'Component Test' que no existe. La página Web debería hacer referencia la sección 'Prueba' de la ayuda en línea.
Volver al archivo readme principal