--
Has recibido este mensaje porque estás suscrito al grupo "Usuarios Odoo / OpenERP en España" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-users+unsub...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
log_min_duration_statement = 200test01=> explain analyze SELECT count(1) FROM "res_partner" WHERE ((("res_partner"."active" = true) AND ("res_partner"."customer" = true)) AND "res_partner"."parent_id" IS NULL );
QUERY PLAN
-----------------------------------------------------------------------------------------------------------------------------------
Aggregate (cost=1116553.35..1116553.36 rows=1 width=0) (actual time=100658.285..100658.286 rows=1 loops=1)
-> Seq Scan on res_partner (cost=0.00..1066550.88 rows=20000988 width=0) (actual time=0.008..96363.068 rows=20000915 loops=1)
Filter: (active AND customer AND (parent_id IS NULL))
Rows Removed by Filter: 74
Total runtime: 100658.418 ms
(5 rows)test01=> CREATE INDEX partner_customer_menu_index ON res_partner (active, customer, parent_id, company_id);
CREATE INDEX
test01=> explain analyze SELECT count(1) FROM "res_partner" WHERE ((("res_partner"."active" = true) AND ("res_partner"."customer" = true)) AND "res_partner"."parent_id" IS NULL );
QUERY PLAN
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Aggregate (cost=808085.26..808085.27 rows=1 width=0) (actual time=10868.048..10868.049 rows=1 loops=1)
-> Index Only Scan using partner_customer_menu_index on res_partner (cost=0.56..758082.79 rows=20000988 width=0) (actual time=0.059..6959.573 rows=20000915 loops=1)
Index Cond: ((active = true) AND (customer = true) AND (parent_id IS NULL))
Filter: (active AND customer)
Heap Fetches: 0
Total runtime: 10868.095 ms
(6 rows)--
--
Si el problema está del lado del código Python entonces lo que necesitáis es usar un perfilador de Python para ver donde está perdiendo más tiempo.
Hace tiempo había creado un perfilador
específico para OpenERP 6, que analizaba las operaciones del
ORM que quizá podríais aprovechar...
Pero probablemente con el cProfile
de Python y un poco de maña os baste para ver si hay algún
método donde se pierda la mayor parte del tiempo de CPU (bien por
lento, bien porque se llama mucho).
Un saludo :)
--
Has recibido este mensaje porque estás suscrito a un tema del grupo "Usuarios Odoo / OpenERP en España" de Grupos de Google.
Para cancelar la suscripción a este tema, visita https://groups.google.com/d/topic/openerp-spain-users/KCdAxfGrMSc/unsubscribe.
Para cancelar la suscripción a este grupo y a todos sus temas, envía un correo electrónico a openerp-spain-u...@googlegroups.com.
Para cancelar la suscripción a este grupo y a todos sus temas, envía un correo electrónico a openerp-spain-users+unsub...@googlegroups.com.