Re: Transaccionaildad de una función postgresql en una excepción java

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Fernando Paz <fpaz(at)engineer(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Transaccionaildad de una función postgresql en una excepción java
Date: 2013-03-20 16:53:48
Message-ID: 20130320165348.GC3688@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Fernando Paz escribió:

> Mi código es: en la primera parte del código hago un create de una pesona,
> en una segunda parte llamo a una función de postgresql y finalmente en una
> tercera parte hago un update del registro:
>
> // primera parte
> ...
> personaDao.create(persona);
> ...
> // segunda parte
> ...
> usuarioDao.createQuery("select crearpersona (" + persona.getId() + ")");
> // llamada a funcion postgresq
> ...
> // tercera parte
> ...
> registroDao.update(registro); // AQUI FALLA!!!!!
> ...
>
> El porque falla no es el problema, el problema fue la transaccionalidad ya
> que al dispararse la excepción de java hizo rollback de la primera y
> tercera parte, pero la funcion de postgres que internamiente tiene su begin
> y end ya hizo commit de sus oporaciones internas.... la consecuencia esa
> que mi bdd quedo partida

No entendí muy bien exactamente qué es lo que está sucediendo, pero
pareciera que necesitas setear la conexión con autocommit off, y abrir
una transacción antes del personaDao.create() y cerrarla después del
registroDao.update(). De esta manera, si ocurre un error en algún lugar
intermedio, la base de datos hará rollback de todo el conjunto y no
quedará "partida".

--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gilberto Castillo 2013-03-20 16:54:48 Re: [pgsql-es-ayuda] Transaccionaildad de una función postgresql en una excepción java
Previous Message Fernando Paz 2013-03-20 16:39:56 Transaccionaildad de una función postgresql en una excepción java