def clean_feed(args): LOG.info('Cleaning feeds table') db_string = get_global_config(args.dir).get('db_string') db = database.connect(db_string) feeds = database.get_feed(db, start=args.start, end=args.end) LOG.info('Got %d feeds between %s and %s', len(feeds), args.start, args.end) ids_to_delete = [feed.id for feed in feeds] if args.execute: database.delete_row(db, database.Feed, ids_to_delete)
def _check_feed_interval(self, feed_name, result, interval): try: last_feeds = database.get_feed(self.db, feed_name=feed_name, result=result, last_available=1) except OperationalError as e: last_feeds = None LOG.error("Fail to get feeds '%s'", e) if not last_feeds: last_feed = 0 else: last_feed = last_feeds[0].last_update return utils.time_offset(-last_feed) > interval