Problemas de acceso a datos para bases de datos Apache Derby

Utilice las sugerencias de resolución de problemas como ayuda para acceder a las bases de datos Apache Derby.

Se ha producido una excepción IOException derivada en SQLException al acceder a la base de datos Apache Derby.

Este problema se puede producir debido a que las bases de datos Apache Derby utilizan muchos archivos. Algunos sistemas operativos como, por ejemplo, el entorno operativo Solaris, limitan el número de archivos que puede abrir una aplicación cada vez. Si el número predeterminado es un número bajo como, por ejemplo, 64, es posible que reciba esta excepción.

Si puede configurar el número de descriptores de archivo en su sistema operativo, puede corregir el problema estableciendo el número en un valor alto, como por ejemplo 1024.

Al ejecutar la operación "select for update", se crea un bloqueo de tabla y un punto muerto cuando se accede a Apache Derby

Si una operación select for update en una fila bloquea toda la tabla, y crea un punto muerto, puede que hayan índices no definidos en esa tabla. Si falta un índice en las columnas que se utilizan en la cláusula where, Apache Derby puede crear un bloqueo de tabla en lugar de un bloqueo a nivel de fila.

Para resolver este problema, cree un índice en la tabla afectada.

Error "La versión del controlador IBM Universal JDBC que se está utilizando no tiene licencia de conectividad con bases de datos Apache Derby"

En el tiempo de ejecución del cliente, se produce un error parecido al siguiente:
La versión del controlador IBM Universal JDBC que
se está utilizando no 
tiene licencia de conectividad con bases de datos
Apache Derby.  Para conectarse 
a este servidor DB2, obtenga una copia con licencia del controlador IBM DB2 
Universal Driver para JDBC y SQLJ.  El archivo de licencia correspondiente 
db2jcc_license_*.jar de esta plataforma de destino debe estar instalado en la 
classpath de la aplicación.  La conectividad con las bases de datos Apache Derby está 
habilitada por cualquiera de los siguientes archivos de licencia: 
{ db2jcc_license_c.jar, b2jcc_license_cu.jar, db2jcc_license_cisuz.jar }
El problema se produce porque se especifica un nombre incorrecto de archivo Java™ (JAR) de controlador JDBC en la classpath del proveedor de JDBC. Por ejemplo, el nombre de archivo JAR podría tener un '_' adicional:
${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license__cu.jar
Para resolver el problema:
  1. Corrija el nombre de archivo JAR UNIVERSAL_JDBC_DRIVER_PATH JAR en el script JACL.
  2. Reinicie el clúster.
  3. Vuelva a ejecutar el cliente.

Si se ejecuta una aplicación, se produce una excepción de tiempo de ejecución que produce un mensaje ilegible

Durante el tiempo de ejecución del cliente, puede recibir un mensaje parecido al siguiente: Caused by: com.ibm.db2.jcc.a.SqlException: DB2 SQL error: SQLCODE: -1, SQLSTATE: 42X05, SQLERRMC: ANNUITYHOLDER20^T42X05

El problema se produce porque no se ha establecido la propiedad retrieveMessagesfromServerOnGetMessage, que necesita WebSphere Application Server.

Para solucionar este problema, en la consola administrativa:
  1. Pulse Recursos > Proveedores de JDBC.
  2. Pulse un proveedor de Apache Derby.
  3. Desplácese hacia abajo y pulse Orígenes de datos.
  4. Seleccione el origen de datos o añada uno nuevo.
  5. Seleccione Propiedades personalizadas.
  6. Si la propiedad retrieveMessagesFromServerOnGetMessage existe, establezca su valor en true. Si la propiedad no existe, seleccione Nuevo y añada la propiedad retrieveMessagesFromServerOnGetMessage con un valor true.
  7. Vuelva a ejecutar el cliente.
SystemOut.log generará ahora mensajes legibles para que pueda resolver el problema subyacente.
Nota: En este tema se hace referencia a uno o más de los archivos de registro del servidor de aplicaciones. Como alternativa recomendada, puede configurar el servidor para utilizar la infraestructura de registro y rastreo HPEL en lugar de utilizar los archivos SystemOut.log , SystemErr.log, trace.log y activity.log en sistemas distribuidos y de IBM® i. Puede también utilizar HPEL junto con sus recursos de registro nativos de z/OS. Si utiliza HPEL, puede acceder a toda la información de registro y rastreo utilizando la herramienta de línea de mandatos LogViewer desde el directorio bin de perfil de servidor. Consulte la información sobre la utilización de HPEL para resolver problemas de aplicaciones para obtener más información sobre la utilización de HPEL.

Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rtrb_dsaccess5
File name: rtrb_dsaccess5.html