From 8c52d2f376d3c442aa4203db24f2aec582c56620 Mon Sep 17 00:00:00 2001 From: r888888888 Date: Thu, 14 Aug 2014 12:54:31 -0700 Subject: [PATCH] increase saved search limit, retry timedout uploads --- app/models/upload.rb | 21 ++++++++++++++++++--- app/models/user.rb | 2 +- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/app/models/upload.rb b/app/models/upload.rb index 200ffe32e..d8f5105c9 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -87,9 +87,7 @@ class Upload < ActiveRecord::Base end module ConversionMethods - def process!(force = false) - return if !force && status =~ /processing|completed|error/ - + def process_once CurrentUser.scoped(uploader, uploader_ip_addr) do update_attribute(:status, "processing") if is_downloadable? @@ -119,8 +117,25 @@ class Upload < ActiveRecord::Base update_attribute(:status, "error: " + post.errors.full_messages.join(", ")) end end + end + + def process!(force = false) + @tries ||= 0 + return if !force && status =~ /processing|completed|error/ + + process_once + + rescue Timeout::Error, Net::HTTP::Persistent::Error => x + if @tries > 3 + update_attributes(:status => "error: #{x.class} - #{x.message}", :backtrace => x.backtrace.join("\n")) + else + @tries += 1 + retry + end + rescue Exception => x update_attributes(:status => "error: #{x.class} - #{x.message}", :backtrace => x.backtrace.join("\n")) + ensure delete_temp_file end diff --git a/app/models/user.rb b/app/models/user.rb index c68a4b2dd..b9a66e56d 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -457,7 +457,7 @@ class User < ActiveRecord::Base end def show_saved_searches? - id < 300_000 + id < 1_000_000 end def can_upload?