Commit once for each feed. If an exception occurred while parsing it,
authorMagnus Hagander <magnus@hagander.net>
Wed, 21 Jan 2009 15:11:57 +0000 (15:11 +0000)
committerMagnus Hagander <magnus@hagander.net>
Wed, 21 Jan 2009 15:11:57 +0000 (15:11 +0000)
roll it back instead (so that db level exceptions don't cause the
whole aggregator to fail)

aggregator.py

index 182d02335191dff4ebe9e2f7f48a4dec039bf22f..de01befeb278ac099018624e2dd9f7bed102e65c 100755 (executable)
@@ -28,8 +28,8 @@ class Aggregator:
                                self.ParseFeed(feed)
                        except Exception, e:
                                print "Exception when parsing feed '%s': %s" % (feed[1], e)
-
-               self.db.commit()
+                               self.db.rollback()
+                       self.db.commit()
 
        def ParseFeed(self, feedinfo):
                #print "Loading feed %s" % (feedinfo[1])