-- queue. It does not auto-detect table structure, it needs to be passed
-- as trigger arg.
--
+-- Purpose:
+-- Used by Londiste to generate replication events. The "partial SQL"
+-- format is more compact than the urlencoded format but cannot be
+-- parsed, only applied. Which is fine for Londiste.
+--
-- Parameters:
-- arg1 - queue name
-- arg2 - column type spec string where each column corresponds to one char (k/v/i).
-- Automatic SQL trigger. It puts row data in partial SQL form into
-- queue. It autodetects table structure.
--
+-- Purpose:
+-- Written as more flexible version of logtriga to handle exceptional cases
+-- where there is no primary key index on table etc.
+--
-- Parameters:
--- arg1 - queue name
--- argX - any number of optional arg, in any order
+-- arg1 - queue name
+-- argX - any number of optional arg, in any order
--
-- Optinal arguments:
-- SKIP - The actual operation should be skipped
--
-- Trigger function that puts row data in urlencoded form into queue.
--
+-- Purpose:
+-- Used as producer for several PgQ standard consumers (cube_dispatcher,
+-- queue_mover, table_dispatcher). Basically for cases where the
+-- consumer wants to parse the event and look at the actual column values.
+--
-- Trigger parameters:
-- arg1 - queue name
-- argX - any number of optional arg, in any order
-- ev_extra1 - table name
--
-- Regular listen trigger example:
--- > CREATE TRIGGER triga_nimi AFTER INSERT OR UPDATE ON customer
--- > FOR EACH ROW EXECUTE PROCEDURE pgq.logutriga('qname');
+-- > CREATE TRIGGER triga_nimi AFTER INSERT OR UPDATE ON customer
+-- > FOR EACH ROW EXECUTE PROCEDURE pgq.logutriga('qname');
--
-- Redirect trigger example:
--- > CREATE TRIGGER triga_nimi AFTER INSERT OR UPDATE ON customer
+-- > CREATE TRIGGER triga_nimi BEFORE INSERT OR UPDATE ON customer
-- > FOR EACH ROW EXECUTE PROCEDURE pgq.logutriga('qname', 'SKIP');
-- ----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION pgq.logutriga() RETURNS TRIGGER