Re: transacciones dentro de una transaccion

From: gorka <glana(at)cestel(dot)es>
To: Jaime Casanova <jaime(at)2ndquadrant(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: transacciones dentro de una transaccion
Date: 2012-02-08 11:29:23
Message-ID: 4F325C93.8000108@cestel.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola Jaime:

Si, una de las posibilidades en la que hemos pensado es extraer el
contenido del bucle a una funcion y que esta sea llamada por cada
registro, probablemente desde Java. Tambien otra posibilidad es lo del
dblink, pero no se yo si el rendimiento no se va a resentir bastante,
porque me imagino que el uso de dblink puede ralentizar bastante el
proceso, auqnue aun no hemos hecho pruebas.
El proceso tarda bastante, dependiendo del tamaño del fichero que mande
el cliente, pero lo mismo tarda 2 minutos que 40. El problema es que los
mismos registros modificados por ese procedimiento pueden ser
modificados por la aplicación web, y ahi pueden producirse bloqueos.
Esos bloqueos son mas habituales cuando los ficheros del cliente son
grandes, porque la transaccion que procesa el fichero tarda más, y ahi
es donde tenemos el problema. Cuando el fichero es pequeños, no suele
haber bloqueos.

Gracias y saludos

El 05/02/12 17:53, Jaime Casanova escribió:
> 2012/1/31 gorka<glana(at)cestel(dot)es>:
>> Pues bien, resulta que como ese proceso de recorrer varias tablas y
>> actualizar o insertar en el esquema de trabajo es bastante complejo, y
>> además en casos de clientes especiales, hay muchos registros de operaciones
>> y la transacción de incorporación a tablas de trabajo se demora bastante en
>> el tiempo, la aplicación web empieza a escribir en las mismas tablas de
>> trabajo, y se producen bloqueos.
> por ahora la unica solucion viable para lo que describes es usar
> dblink, o procesar los archivos con un script en perl o python y por
> cada registro del archivo abres una transaccion para procesar...
>
> ahora, cuanto demora ese proceso? por que de repente puedes mejorar el
> tiempo de respuesta de manera que no necesites complicarte mas
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message A J 2012-02-08 11:45:09 Agotamiento del Espacio en Disco al Ejecutar Conulta
Previous Message Edwin Quijada 2012-02-08 03:45:04 RE: [pgsql-es-ayuda] Configuración para aplicación