Re: Problemas con tablas temporales y tiempo de respuesta...

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Paulina Quezada <paulina(dot)quezada(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Problemas con tablas temporales y tiempo de respuesta...
Date: 2007-03-06 23:19:21
Message-ID: 20070306231920.GM12837@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Paulina Quezada escribió:
> Gracias Alvaro, y si, hago mantenimiento regularmente, lo que no he hecho es
> activar el autovacum, y en este servidor 8.2.1 la aplicación está
> corriendo
> desde hace 2 días, y desde ahí comenzó super lenta y como te decía esto
> pasa
> después de la sentencia que crea las tablas temporales, si no creo las
> tablas temporales ningún problema es rápida (claro que no funcionan las
> opciones que necesitan de las tablas temporales)

Sospecho que puede ser que el indice pg_class_relname_nsp_index no este
muy limpio. Sugerencia: prueba a hacer un VACUUM de la tabla pg_class y
prueba las opciones que usan las tablas temporales. Si no pasa nada
(i.e. es lento), haz un REINDEX de esa tabla y prueba de nuevo.

Tambien prueba con las tablas pg_attribute, pg_namespace y pg_attrdef,
que me tinca que pueden ser aquellas con las que tengas problemas (y
otras, dependiendo de si tienes cosas especiales, como restricciones
CHECK, etc).

> Es cierto que puedo crear las tablas temporales una sola vez, en el esquema
> de la base de datos para no crearlas en una función cada vez que inicio la
> aplicación?

No

> y si es así en qué esquema se crean?

El problema es que si creas tablas que no sean temporales, cuando haya
dos usuarios accediendo las mismas tablas cada uno vera los datos del
otro, cosa que evidentemente no deseas.

> Además, no existe problema al concurrir dos usuarios a la misma tabla
> temporal? en el sentido de que un usuario llene con unos datos y otro con
> otro y al final los dos vean datos erróneos por ese llenado concurrente en
> la tabla?

Eso funciona como quieres (i.e. cada uno ve solo sus propios datos) solo
si las tablas son temporales.

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gabriel Ferro 2007-03-06 23:35:28 Establecer relaciones entre tablas
Previous Message Gabriel Colina 2007-03-06 22:26:28 Re: FEDORA CORE 2 Y POSTGRES 8.2.3