Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{scrollbar}

Al ejecutar una consulta con el driver jdbc de MySQL el comportamiento normal es que devuelve la información luego de terminada la consulta a la BD.

En el caso de extraer una gran cantidad de información se podrá llegar al límite de la memoria virtual asignada al proceso y devolvernos un Java Heap Memory.

La solución a este inconveniente es solicitarle al driver que no cargue los datos en memoria y lo los devuelva.

Esta solución está en devolvernos los datos de a uno (row by row) y aplicable para la versión de O3 BI 5.4.022 (warning), para versiones posteriores ver más adelante.

Debe considerarse que esta solución nos permitirá extraer la información deseada, y bajará notablemente la performance de extracción y por lo tanto aumenta los tiempos de construcción de cubo.

Procedimiento para versión 5.4.022

  • Se debe copiar el _o3p-HD-4582.jar a la carpeta classes de la instalación.
  • Adicionalmente se debe activar la property o3.jdbc.mysql.rowbyrow=true en el archivo O3Builder.properties u O3Designer.properties, segun corresponda.

 

Note
titleNotificación

Se debe visualizar el siguiente mensaje en el log del componente actuante

MySQL Statement created to read row-by-row

Referencias: http://dev.mysql.com/doc/connector-j/en/connector-j-reference-implementation-notes.html

Procedimiento para versiones superiores a la 5.4.022

  • Se debe activar la property o3.jdbc.mysql.rowbyrow=true en el archivo O3Builder.properties u O3Designer.properties