CVS User Account cvsuser
Thu Sep 7 06:12:45 PDT 2006
Log Message:
-----------
* recommit after crash *
Change to logtrigger(), as discussed on the list.

    Node is subscriber for table A and has an ON INSERT trigger that
    inserts in another table B. That node is origin for table B, so it
    has a logtrigger. The logtrigger on B checks if the trigger is fired
    in a client session or by slon and gives the error.

We now remove that reporting-of-error, which will permit this cascading
update from one replication set into another.

Modified Files:
--------------
    slony1-engine/src/backend:
        slony1_funcs.c (r1.51 -> r1.52)

-------------- next part --------------
Index: slony1_funcs.c
===================================================================
RCS file: /usr/local/cvsroot/slony1/slony1-engine/src/backend/slony1_funcs.c,v
retrieving revision 1.51
retrieving revision 1.52
diff -Lsrc/backend/slony1_funcs.c -Lsrc/backend/slony1_funcs.c -u -w -r1.51 -r1.52
--- src/backend/slony1_funcs.c
+++ src/backend/slony1_funcs.c
@@ -449,7 +449,10 @@
 			break;
 
 		case SLON_ROLE_SLON:	/* non-client session ??? */
-			elog(ERROR, "Slony-I: logTrigger() called in non-client session");
+			/* This would happen when a trigger on a
+			 * subscriber on a replicated table fires, and
+			 * modifies a tuple in a replication set for
+			 * which this node is the origin */
 	}
 
 	/*



More information about the Slony1-commit mailing list