PDF Lento

Buenos Dias
Desde que actualizamos desde la 3.19.1 a la ultima version 3.20.2 al imprimir un pdf se volvio muy lento. Ya probamos con la solucion que dan en el link del foro que cito abajo en un ambiente de prueba pero sigue sin funcionar y ademas me dan el siguiente error en el paso 5 al agregar la variable JAVA_PIPE_DIR al php ini

Error al ejecutar el comando '/usr/local/app/php/3ros/fop/fop -xml /usr/local/app/vendor/siu-toba/framework/temp/xmloEAAme -xsl /usr/local/app/vendor/siu-toba/framework/exportaciones/pdf.xsl -pdf /usr/local/app/vendor/siu-toba/framework/temp/archivo.pdf'

Ademas si saco esa variable me da el siguiente error en apache

WARNING: Line 2 of a paragraph overflows the available area by 416mpt. (fo:block, "Segundo Cuatrimestre") PHP Fatal error: Cannot redeclare toba_vista_jasperreports::$objetos in /proyectos/guarani/vendor/siu-toba/framework/php/nucleo/lib/salidas/toba_vista_jasperreports.php on line 29, referer: http://migraciong3.unsa.edu.ar/guarani/gestion/aplicacion.php?ah=st6356acf1922be6.18415729&ai=guarani%7C%7C41000086


https://foro.comunidad.siu.edu.ar/index.php?topic=24547.0

Adjunto los logs de produccion en donde no se realizo ningun cambio de los mencionados y anda muy lento.

Saludos


log_apache_antes.txt (2.97 KB)

aplicacion_log_antes.txt (87.9 KB)

Hola, para mejorar la velocidad y la compatibilidad con la versión 7.4 de php te recomiendo que cambies el archivo composer.json en el apartado siu-toba/jasper, colocarlo como detallo a continuación.

"siu-toba/jasper": "v5.6.1.2",
una vez realizado el cambio ejecutar por consola.
composer update siu-toba/jasper
eso debería aumentar la velocidad en la generación del reporte!, con respecto al error que nos mencionas pareciera ser un problema de permisos! te dejo a mano para que vuelvas aplicarlo
chown -R $(whoami):www-data www temp instalacion vendor/siu-toba/framework/www vendor/siu-toba/framework/temp chmod 775 -R www temp instalacion vendor/siu-toba/framework/www vendor/siu-toba/framework/temp
2

Está corrección, saldrá en la versión 3.21

Buenos Dias
Realize los siguientes pasos para gestion y esta todo ok por el momento:

Guaraní Gestión:

  1. Comentar/eliminar las lineas donde dice static::ajustarJasperPhp74(); en src/SIU/Guarani/Scripts/Composer.php (también la función ajustarJasperPhp74).

  2. En composer.json cambiar a “siu-toba/jasper”: “v5.6.1.2”, ej:
    Código: [Seleccionar]

    “require”: {
    “php”: “7.4.*”,
    “siu-toba/framework”: “~3.3”,
    “siu/instalador”: “^1.9”,
    “siu-toba/jasper”: “v5.6.1.2”,

  3. Ejecutar composer update siu-toba/jasper

  4. En php.ini configurar la directiva java.pipe_dir a un directorio temporal con permisos de escritura en este caso path_proyecto/temp

  5. Poner la directiva display_errors = Off en el php.ini

  6. Reiniciar SO.

En autogestion que esta en otro servidor me generaba problemas, se apagaba el servicio de apache cada rato entonces actualize el jasper tambien ahi

Guaraní Autogestión:

  1. Comentar/eliminar las lineas donde dice static::ajustarJasperPhp74($vendorDir); en src/siu/Install.php (también la función ajustarJasperPhp74).
  2. En composer.json agregar “siu-toba/jasper”: “v5.6.1.2” y en composer.lock cambiar donde diga “dev-master” a “v5.6.1.2” en lo que respecta a la versión de siu-toba/jasper, ej:

composer.json:
Código: [Seleccionar]

“require”: {
“php”: “7.4.",
“siu/chulupi-framework”: "2.4.
”,
“siu/arai-cli”: “3.0.0”,
“siu-toba/jasper”: “v5.6.1.2”,

composer.lock:
Código: [Seleccionar]

"name": "siu-toba/jasper",
"version": "v5.6.1.2",

“siu-toba/jasper”: “v5.6.1.2”,

  1. Ejecutar composer update siu-toba/jasper

  2. En php.ini configurar la directiva java.pipe_dir a un directorio temporal con permisos de escritura path_proyectos/instalacion/temp

  3. Poner la directiva display_errors = Off en el php.ini, ya que sino mete warnings/notices en el PDF y queda corrupto.

  4. Reiniciar SO

Funciona todo bien hasta ahora, mi pregunta es si esta bien que la variable java.pipe_dir sea igual a path_proyectos/instalacion/temp

Saludos

Hola Yanina, cual es el archivo de Jasper que corresponde a esa impresión que esta tardando demasiado tiempo en imprimirse?
¿Probaste la query que esta en ese Jasper?

Buenos Dias Alejandro
Lo que tardaba en abrirse son el reporte de las historias academicas, y los reportes personalizados, la historia academica no esta personalizada y otros reportes de la ficha de la persona como propuestas o porcentaje de avance no tenia problema, si necesitas alguno en especial puedo preguntar si tambien demoraban en funcionar . Funcionaba bien hasta que hubo cambio de versión de la 3.19.1 a la 3.20.1, realizé los cambios mencionados arriba y al parecer todo funciona bien porque no se ha reportado nuevamente el problema.

Saludos

Hola Yanina, agrego a lo de Ale y Fede:

Seguí mejor estos pasos: https://foro.comunidad.siu.edu.ar/index.php?topic=23833.msg115232

Cambia lo siguiente:
4) En php.ini NO configures la directiva java.pipe_dir.
5) Dar permisos a la carpeta /dev/shm (yo le di chmod 7777 -R /dev/shm).

Ya que la carpeta que configuras en java.pipe_dir se llena de archivos y se pone lento.

saludos.
2