comparison roundup/backends/back_postgresql.py @ 8303:45ec660eb7f7

Fix filter_iter so that exception is caught
author Ralf Schlatterbeck <rsc@runtux.com>
date Thu, 27 Feb 2025 10:05:38 +0100
parents 82a26ea1afdf
children a81a3cd067fa
comparison
equal deleted inserted replaced
8302:82a26ea1afdf 8303:45ec660eb7f7
591 raise hyperdb.HyperdbValueError(str (err).split('\n')[0]) 591 raise hyperdb.HyperdbValueError(str (err).split('\n')[0])
592 592
593 def filter_iter(self, *args, **kw): 593 def filter_iter(self, *args, **kw):
594 self.db.sql('savepoint sp') 594 self.db.sql('savepoint sp')
595 try: 595 try:
596 return rdbms_common.Class.filter_iter(self, *args, **kw) 596 for v in rdbms_common.Class.filter_iter(self, *args, **kw):
597 yield v
597 except psycopg2.errors.DataError as err: 598 except psycopg2.errors.DataError as err:
598 self.db.sql('rollback to savepoint sp') 599 self.db.sql('rollback to savepoint sp')
599 raise hyperdb.HyperdbValueError(str (err).split('\n')[0]) 600 raise hyperdb.HyperdbValueError(str (err).split('\n')[0])
600 601
601 def is_retired(self, nodeid): 602 def is_retired(self, nodeid):

Roundup Issue Tracker: http://roundup-tracker.org/