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 ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda