Trigger sobre tabla replicada con slony1 2.2.1 no funciona

From: Adrián Misael Peña Montero <ampena(at)uci(dot)cu>
To: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Trigger sobre tabla replicada con slony1 2.2.1 no funciona
Date: 2014-02-10 14:26:56
Message-ID: 837247210.6606013.1392042416109.JavaMail.zimbra@uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola

Estoy creando un trigger sobre una tabla que se llena como resultado de una réplica que se realiza utilizando slony1 versión 2.2.1. La tabla se actualiza como resultado de la réplica pero el trigger nunca se dispara. El trigger está puesto para que se ejecute sobre las sentencias INSERT, UPDATE y DELETE.

Aquí les dejo la sentencia de creación del trigger

CREATE TRIGGER tg_sync_nrol

AFTER INSERT OR UPDATE OR DELETE

ON _sync.nrol

FOR EACH STATEMENT

EXECUTE PROCEDURE _sync.ftg_sync_nrol();

y el código de la función que ejecuta

CREATE OR REPLACE FUNCTION _sync.ftg_sync_nrol()

RETURNS trigger AS

$BODY$

BEGIN

IF (TG_OP = 'INSERT') THEN

INSERT INTO nrol (idrol, rol, description) VALUES (NEW.idrol, NEW.rol, '');

RETURN NEW;

ELSIF (TG_OP = 'UPDATE') THEN

IF OLD.idrol != NEW.idrol OR OLD.rol != NEW.rol THEN

UPDATE nrol SET (idrol, rol) = (NEW.idrol, NEW.rol) WHERE idrol = OLD.idrol;

END IF;

RETURN NEW;

ELSIF (TG_OP = 'DELETE') THEN

DELETE FROM nrol WHERE idrol = OLD.idrol;

RETURN OLD;

END IF;

RETURN NULL;

END;

$BODY$

Saludos

________________________________________________________________________________________________
III Escuela Internacional de Invierno en la UCI del 17 al 28 de febrero del 2014. Ver www.uci.cu

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2014-02-10 15:16:00 Re: Bloqueo de hojas de calculo
Previous Message Jorge Alberto Aquino Andrade 2014-02-10 13:58:01 Re: Bloqueo de hojas de calculo