lock en procedure

From: Luis Gerardo Muro Ramos <viernes(at)xmarts(dot)com(dot)mx>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: lock en procedure
Date: 2010-12-02 16:28:26
Message-ID: AANLkTimJ=Fwdf8YO0EOJcLOcNtwQRcE_ZG=jJ1A97xwx@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Saludos a todos

Creo que necesito un poco de su ayuda :D

En una aplicación OB, estoy pasando registros de una remisión generando dos
facturas, hay aproximadamente 25 usuarios concurrentes como maximo utilizo
postgres 8.4.4, micro 8 cores, 8 G de ram en un servidor dedicado.

Basicamente tengo una cuenta que varia de 1 registro a 500 y las divide en
factura para el cliente y aseguradora, cuando son de 1 a 30 registros no hay
problema incluso si una cuenta tiene 500 registros solo tarda de 60 a 120s,
el problema es cuando varias cuentas 2-5 de +50 registros mi proceso se
tarda hasta 10 minutos o mas.

La db se le ejecuta vacum full y mejora pero no significativo, el proceso lo
hace un procedure que a su vez manda llamar a dos mas para cada factura,
utilizo insert select en vez de barrer un cursor, he buscado varias
alternativas pero solo seme ocurre el lock, cada función es de inserción por
lo que no debe de hacer un lock no hay posibilidades de duplicar registros

Cuando esta ejecutanto el proceso me aumenta los locks de 21 a 200 y son de
tipo RowShareLock AccessShareLock ExclusiveLock en distintas tablas.

Como podría desactivar que haga el lock o en filar mis procedimientos para
evitar esta saturación ?

Gracias saludos a todos

--
Luis Gerado Muro Ramos
Director de Proyectos
Tel: +52 (55) 47 77 3120
+52 (33) 47 77 0110
+52 (81) 12 47 6120
01 800 087 2260
Cel: +52 (55) 19507875
luis(dot)muro(at)xmarts(dot)com(dot)mx
twitter viernesmx

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message jorge ricardo andres zambrano chavez 2010-12-02 20:47:18 En busqueda de informacion de postgresql
Previous Message Alvaro Herrera 2010-12-02 13:34:23 Re: Obtener la IP de un cliente web