[Pgsql-ayuda] trabajando con tablas temporales y plpgsql

From: "Fernando Papa" <fpapa(at)claxson(dot)com>
To: <pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx>
Subject: [Pgsql-ayuda] trabajando con tablas temporales y plpgsql
Date: 2003-10-17 20:03:16
Message-ID: F1DC5B511E2D1C499E5E20FC6D74160D04BCA30F@exch2000.buehuergo.corp.claxson.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Buenas!
Estoy trabajando con tablas temporarias... Hasta hace un par de meses, no hubo ningun inconveniente. Sin embargo, estabamos notando una caida en la performance de ciertos procedures (plpgsql).
Para ver cual era el cuello de botella dentro del procedure, empece a ejecutar de a una las sentecias, y para mi sorpresa, vi que la mayor parte de la ejecucion me la llevaba el "create table".
Para mas datos, aca va el log:

2003-10-14 17:29:25 [25252] LOG: query: CREATE LOCAL TEMPORARY TABLE VAL ( id_contenido NUMERIC,
id_tipo NUMERIC,
url_flash_esp VARCHAR(500),
url_flash_por VARCHAR(500),
url_flash_ing VARCHAR(500),
orden VARCHAR(20),
mod_url_flash_esp VARCHAR(1),
mod_url_flash_por VARCHAR(1),
mod_url_flash_ing VARCHAR(1)
)
2003-10-14 17:33:29 [25252] LOG: duration: 245.070924 sec

Es un postgresql 7.3.4 sobre solaris. Lo que pude notar es que tengo un alto porcentaje de esperas por I/O, pero solo cuando corro el procedure, o cuando creo la tabla.
Parte de la configuración de postgresql.conf incluye:

shared_buffers = 16384
max_fsm_relations = 2000
max_fsm_pages = 10000 # min 1000, fsm is free space map, ~6 bytes
wal_buffers = 8 # min 4, typically 8KB each
sort_mem = 1024 # min 64, size in KB
vacuum_mem = 32767
checkpoint_segments = 6 # in logfile segments, min 1, 16MB each
fsync = true
effective_cache_size = 19200

Mi pregunta es ¿puede estar relacionado el tema de la baja de performance con la creacion/utilizacion de tablas temporarias? ¿por que esta utilizando tanto el acceso a disco para la creacion de una tabla temporaria?
Estuve revisando la información que hay en el sitio oficial de postgresql, pero no hay ninguna mencion en particular a las tablas temporarias y cuestiones de performance.
A esta base se le hace un vacuum full analyze diario, todas las noches.

Si a alguien se le ocurre que puede estar pasando, desde ya se lo agradezco

Fernando O. Papa

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2003-10-17 20:23:07 Re: [Pgsql-ayuda] trabajando con tablas temporales y plpgsql
Previous Message Fco. Valladolid 2003-10-17 17:08:46 Re: [Pgsql-ayuda] Perl y Postgres]