El 16/09/15 a las 13:01, Gerardo Herzig escribió:
/*
>FOR idevent_for_close_on_restore IN SELECT idevent FROM events WHERE
>ideventtype = ANY(et.auto_close_on_event_defined)
>AND status = 0 AND idaccount = NEW.idaccount AND zu = NEW.zu AND
>idevent != NEW.idevent LOOP
>
>INSERT INTO event_comments(
>comment_event, status,
>idevent)
>VALUES ('Event closed for restoring event idevent '||NEW.idevent, 7,
>idevent_for_close_on_restore);
>
>END LOOP;
>*/

Si dejo el codigo como se muestra a continuacion:

FOR idevent_for_close_on_restore IN SELECT idevent FROM events WHERE
ideventtype = ANY(et.auto_close_on_event_defined)
AND status = 0 AND idaccount = NEW.idaccount AND zu = NEW.zu AND
idevent != NEW.idevent LOOP
/*
INSERT INTO event_comments(
comment_event, status,
idevent)
VALUES ('Event closed for restoring event idevent '||NEW.idevent, 7,
idevent_for_close_on_restore);
*/
END LOOP;

igual se vuelve muy lento el script, probé hace unas semanas atras con ANALIZE 
EXPLAIN y se demoró unos 40 segundos en correr, y eso que solo era prueba. Lo 
que pude ver es que recorre todas las particiones y las particiones de las 
particiones de la tabla events, que de momento como dije son mas de 40 millones 
de registros repartidos en unas 15 tablas.
El indice lo creo solo en la tabla padre o en todas las hijas, creo que lo 
logico seria en todas las hijas, pues son las que contienen datos.



-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a