Hola a todos,

después de unos días, hemos seguido los consejos aquí propuestos para 
intentar solventar el problema de lentitud en la carga de registros del 
módulo de Soporte.

1. Migrar a la versión 3.2 de Tryton
2. Tunear PostgreSQL

La mala notícia es que el problema persiste. 

Hemos hecho el cálculo y la carga de la pantalla de Todos los Soportes del 
Módulo de Soporte tarda 18 segundos, lo que es una barbaridad.

La verdad es que no sabemos que más mirar.

Si alguien titne alguna pista más por dónde mirar se agradecerá.

Saludos y gracias!

Aleix

El dilluns 16 de juny de 2014 14:32:02 UTC+2, jmartin va escriure:
>
>
>
>
> El 16 de junio de 2014, 14:10, Sergi Almacellas Abellana <[email protected] 
> <javascript:>> escribió:
>
>>  El 16/06/14 13:55, Jesús Martín Jiménez ha escrit:
>>  
>>
>>
>>
>> El 13 de junio de 2014, 18:11, Sergi Almacellas Abellana <
>> [email protected] <javascript:>> escribió:
>>
>>>  El 13/06/14 17:38, Jesús Martín Jiménez ha escrit:
>>>  
>>> Hola, 
>>>
>>> El 13 de junio de 2014, 11:19, Raimon Esteve <[email protected] 
>>> <javascript:>> escribió:
>>>
>>>> > 2. Módulo project_helpdesk: al abrir el módulo 
>>>> "Proyectos->Soporte->Todos
>>>> > los soportes->Pestaña Todos los soporte", tenemos 1079 registros 
>>>> (1000 en la
>>>> > 1a página y 79 en la segunda), y tarda unos 27 segundos en cargarla.
>>>> >
>>>> > No tengo este módulo instalado, però me parece una barbaridad 27 
>>>> segundos
>>>> > para cargar 1000 registros.
>>>>  
>>>
>>> He refactorizado el código de los métodos get_num_attachments y 
>>> get_last_talk convirtiéndolos en métodos de clase (para que haga menos 
>>> llamadas en la vista de lista) y convirtiendo el segundo en una consulta 
>>> sql para mejorar el rendimiento. He subido los cambios a la rama 3.2. Por 
>>> favor, probadlo a ver que tal va ahora.
>>>   
>>>  La segunda también se puede hacer con una consulta SQL: 
>>>
>>> select SUBSTRING(resource FROM STRPOS(resource, ',') +1), count(1) from 
>>> ir_attachment where resource in (resources) group by 1;
>>>  
>>
>>  Me has liado ;) Pero la función STRPOS no está implementada en 
>> python-sql y con la función SUBSTRING no he conseguido hacer una query 
>> funcional, así que esa parte la he implementado en Python.
>>   
>>  
>> En python-sql puedes utilizar position :) Aquí tienes un ejemplo:
>>
>>
>> http://hg.tryton.org/trytond/file/5052bcaba02b/trytond/model/fields/reference.py#l129
>>
>
> ¡Ah, vale! Ahora lo veo. Bueno, la proxima vez ya lo haré así.
>  
>
>>
>>    
>>> y luego puedes hacer (esto también lo puedes hacer en la primera 
>>> consulta): 
>>>
>>> res.update(cursor.dictfetchall())
>>>
>>> Para actualizar el diccionario directamente con los valores que te 
>>> devuelve la consulta. 
>>>  
>>
>>  Hecho también.
>>   
>>
>>>  
>>> P.D: I para terminar de poner la guindilla en el pastel, ambas consultas 
>>> se pueden hacer con python-sql :) 
>>>  
>>>   
>>  Un día me explicas eso de la guindilla en el pastel :P
>>   
>> Esque en mi tierra a todo le ponemos picante :) 
>>
>>
>> -- 
>> Sergi Almacellas Abellanawww.koolpi.com
>> Twitter: @pokoli_srk
>>
>>  
>
>
> -- 
>
> Jesús Martín
>
> Zikzakmedia SL
> Dr. Fleming, 28, baixos
> 08720 Vilafranca del Penedès
> ☏ 93 890 21 08
>  

Responder a