Add consumer_filter option to simple_local_consumer.
authorPetr Jelinek <git@pjmodos.net>
Tue, 2 Jul 2013 09:53:59 +0000 (11:53 +0200)
committerPetr Jelinek <git@pjmodos.net>
Tue, 2 Jul 2013 09:53:59 +0000 (11:53 +0200)
scripts/simple_local_consumer.py

index 1c8f97ddec1f6c782d9fc9af1171992a43f16d25..87c658686e1172e543149256b5e8e6942e2aa511 100755 (executable)
@@ -13,6 +13,10 @@ Config::
 
     # query to call
     dst_query = select * from somefunc(%%(pgq.ev_data)s);
+
+    ## Use table_filter where possible instead of this ##
+    # filter for events (SQL fragment)
+    consumer_filter = ev_extra1 = 'public.mytable1'
 """
 
 
@@ -30,6 +34,8 @@ class SimpleLocalConsumer(pgq.LocalConsumer):
     def reload(self):
         super(SimpleLocalConsumer, self).reload()
         self.dst_query = self.cf.get("dst_query")
+        if self.cf.get("consumer_filter", ""):
+            self.consumer_filter = self.cf.get("consumer_filter", "")
 
     def process_local_event(self, db, batch_id, ev):
         curs = self.get_database('dst_db', autocommit = 1).cursor()