mirror of
https://github.com/viq/NewsBlur.git
synced 2025-08-05 16:49:45 +00:00
Fixing icon fetching error when the page is corrupted.
This commit is contained in:
parent
d209aa5e25
commit
c1b5aef983
5 changed files with 18 additions and 11 deletions
|
@ -167,12 +167,13 @@ class UserSubscription(models.Model):
|
||||||
now = datetime.datetime.utcnow()
|
now = datetime.datetime.utcnow()
|
||||||
|
|
||||||
# Use the latest story to get last read time.
|
# Use the latest story to get last read time.
|
||||||
if MStory.objects(story_feed_id=self.feed.pk).first():
|
latest_story = MStory.objects(story_feed_id=self.feed.pk).order_by('-story_date').only('story_date')
|
||||||
latest_story_date = MStory.objects(story_feed_id=self.feed.pk).order_by('-story_date').only('story_date')[0]['story_date']\
|
if latest_story:
|
||||||
|
latest_story_date = latest_story[0]['story_date']\
|
||||||
+ datetime.timedelta(seconds=1)
|
+ datetime.timedelta(seconds=1)
|
||||||
else:
|
else:
|
||||||
latest_story_date = now
|
latest_story_date = now
|
||||||
|
|
||||||
self.last_read_date = latest_story_date
|
self.last_read_date = latest_story_date
|
||||||
self.mark_read_date = latest_story_date
|
self.mark_read_date = latest_story_date
|
||||||
self.unread_count_negative = 0
|
self.unread_count_negative = 0
|
||||||
|
|
|
@ -67,7 +67,7 @@ class Command(BaseCommand):
|
||||||
num_workers = 1
|
num_workers = 1
|
||||||
|
|
||||||
options['compute_scores'] = True
|
options['compute_scores'] = True
|
||||||
options['quick'] = ".5"
|
options['quick'] = "0"
|
||||||
|
|
||||||
disp = feed_fetcher.Dispatcher(options, num_workers)
|
disp = feed_fetcher.Dispatcher(options, num_workers)
|
||||||
|
|
||||||
|
|
|
@ -1193,7 +1193,9 @@ class MFeedPage(mongo.Document):
|
||||||
data = None
|
data = None
|
||||||
feed_page = cls.objects(feed_id=feed_id)
|
feed_page = cls.objects(feed_id=feed_id)
|
||||||
if feed_page:
|
if feed_page:
|
||||||
data = feed_page[0].page_data and zlib.decompress(feed_page[0].page_data)
|
page_data_z = feed_page[0].page_data
|
||||||
|
if page_data_z:
|
||||||
|
data = zlib.decompress(page_data_z)
|
||||||
|
|
||||||
if not data:
|
if not data:
|
||||||
dupe_feed = DuplicateFeed.objects.filter(duplicate_feed_id=feed_id)
|
dupe_feed = DuplicateFeed.objects.filter(duplicate_feed_id=feed_id)
|
||||||
|
@ -1201,7 +1203,9 @@ class MFeedPage(mongo.Document):
|
||||||
feed = dupe_feed[0].feed
|
feed = dupe_feed[0].feed
|
||||||
feed_page = MFeedPage.objects.filter(feed_id=feed.pk)
|
feed_page = MFeedPage.objects.filter(feed_id=feed.pk)
|
||||||
if feed_page:
|
if feed_page:
|
||||||
data = feed_page[0].page_data and zlib.decompress(feed_page[0].page_data)
|
page_data_z = feed_page[0].page_data
|
||||||
|
if page_data_z:
|
||||||
|
data = zlib.decompress(feed_page[0].page_data)
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
9
fabfile.py
vendored
9
fabfile.py
vendored
|
@ -199,12 +199,13 @@ def backup_postgresql():
|
||||||
# ===============
|
# ===============
|
||||||
|
|
||||||
def sync_time():
|
def sync_time():
|
||||||
sudo("/etc/init.d/ntp stop", warn_only=True)
|
with settings(warn_only=True):
|
||||||
sudo("ntpdate pool.ntp.org")
|
sudo("/etc/init.d/ntp stop")
|
||||||
sudo("/etc/init.d/ntp start", warn_only=True)
|
sudo("ntpdate pool.ntp.org")
|
||||||
|
sudo("/etc/init.d/ntp start")
|
||||||
|
|
||||||
def setup_time_calibration():
|
def setup_time_calibration():
|
||||||
sudo('apt-get -y remove ntp')
|
sudo('apt-get -y install ntp')
|
||||||
put('config/ntpdate.cron', env.NEWSBLUR_PATH)
|
put('config/ntpdate.cron', env.NEWSBLUR_PATH)
|
||||||
sudo('chmod 755 %s/ntpdate.cron' % env.NEWSBLUR_PATH)
|
sudo('chmod 755 %s/ntpdate.cron' % env.NEWSBLUR_PATH)
|
||||||
sudo('mv %s/ntpdate.cron /etc/cron.hourly/ntpdate' % env.NEWSBLUR_PATH)
|
sudo('mv %s/ntpdate.cron /etc/cron.hourly/ntpdate' % env.NEWSBLUR_PATH)
|
||||||
|
|
|
@ -410,7 +410,8 @@ class Dispatcher:
|
||||||
feed.save_page_history(550, "Page Error", tb)
|
feed.save_page_history(550, "Page Error", tb)
|
||||||
fetched_feed = None
|
fetched_feed = None
|
||||||
mail_feed_error_to_admin(feed, e, local_vars=locals())
|
mail_feed_error_to_admin(feed, e, local_vars=locals())
|
||||||
|
|
||||||
|
feed = self.refresh_feed(feed.pk)
|
||||||
logging.debug(u' ---> [%-30s] ~FYFetching icon: %s' % (unicode(feed)[:30], feed.feed_link))
|
logging.debug(u' ---> [%-30s] ~FYFetching icon: %s' % (unicode(feed)[:30], feed.feed_link))
|
||||||
icon_importer = IconImporter(feed, force=self.options['force'])
|
icon_importer = IconImporter(feed, force=self.options['force'])
|
||||||
try:
|
try:
|
||||||
|
|
Loading…
Add table
Reference in a new issue