Make a quick vote 🗳 ️How do you refer to SuiteCRM extensions: add-ons or plug-ins? Click here to have your say 👈

Problema en Project con project template

Hola, tengo un problema al querer crear/editar un Project con un nuevo Project Template

1.- Creo un project template con N tasks
2.- Creo un Project con ese Project Template

Al grabar se queda esperando hasta que el tiempo de ejecución del PHP finaliza, al revisar los logs desde el ERROR solo me regresa el siguiente mensaje Miles de veces:
Fri Nov 8 10:13:31 2019 [6644][1][ERROR] Index is under processing now
Fri Nov 8 10:13:31 2019 [6644][1][ERROR] Unable to get proper side for link project_name_link
Fri Nov 8 10:13:31 2019 [6644][1][ERROR] Unable to get proper side for link project_name_link
Fri Nov 8 10:13:31 2019 [6644][1][ERROR] Unable to get proper side for link project_name_link
Fri Nov 8 10:13:31 2019 [6644][1][ERROR] Unable to get proper side for link project_name_link
Fri Nov 8 10:13:31 2019 [6644][1][ERROR] Unable to get proper side for link project_name_link

suitecrm 7.11.3
php 7.3

El Apache error solo me regresa el error de que el tiempo execución supero los 300 segundos…

Ya hice reapair a todo lo que pude.

Hay una manera de debugear correctamente el modulo Project?

El problema siempre ocurre en el archivo Module/Project/Save.php
$sugarbean->save($check_notify);

Me parece que el problema debe de estar en el tamaño de la base de datos o del Index de AOD.

Por favor intenta ejecutar la primera query de este post:

https://pgorod.github.io/Database-tables-size/

Y después da este comando (si tienes Linux):

du -h modules/AOD_Index/Index/

(desde el directorio raiz de SuiteCRM)

El problema de los Project tasks puede ser apenas un efecto lateral de problemas con el Index, porque hace muchos “save” en serie, y tarda mucho en escribir en el index.

1 Like

Lo pude corregir agregando una condición a la consulta en el siguiente archivo:

modules/ProjectTask/updateDependencies.php

 $tasks = $Task->get_full_list("", "deleted=0 AND  project_task.project_id = '".$bean->project_id."' AND project_task.predecessors = '".$bean->project_task_id."'");

delete=0; sin esa condición se queda ciclado hasta que el servidor lo detiene

Esto es un bug, nó? Hay que corregirlo en “core” para todo el mundo…

sólo no comprendo porque no funciona el parámetro que ya esta previsto en la función para esto: https://docs.suitecrm.com/developer/working-with-beans/

Si no estamos a utilizar ningun valor para “show_deleted”, el default será “0” e no debería incluir los registros “Deleted”… :huh:

Si pones el log con el nivel “debug” puedes ver todas las queries SQL generadas. Cómo está esta query (antes de tu cambio)?