Commit a937413c56b617f6c925f6eb19b3f38dc42ec3f3

Authored by Luke Baker
1 parent 47c8d62e

re-indent prune_db rake file

Showing 1 changed file with 115 additions and 115 deletions   Show diff stats
lib/tasks/prune_db.rake
1 namespace :prune_db do 1 namespace :prune_db do
2 - 2 +
3 task :all => [:invalidate_votes_with_bad_response_times] 3 task :all => [:invalidate_votes_with_bad_response_times]
4 4
5 task(:invalidate_votes_with_bad_response_times => :environment) do 5 task(:invalidate_votes_with_bad_response_times => :environment) do
6 - badvotes = []  
7 - #might want to optimize later to not start from the beginning each time  
8 - STDOUT.sync = true  
9 - Vote.find_each(:batch_size => 10000, :include => :appearance) do |v|  
10 - next if v.nil? || v.appearance.nil?  
11 - server_response_time = v.created_at.to_f - v.appearance.created_at.to_f  
12 - if v.time_viewed && v.time_viewed/1000 > server_response_time  
13 - badvotes << v  
14 - print "."  
15 - end  
16 - end  
17 - puts "\n"  
18 -  
19 - if badvotes.any?  
20 -  
21 - badvotes.each do |v|  
22 - v.time_viewed = nil  
23 - v.missing_response_time_exp = "invalid"  
24 - v.save!  
25 - end  
26 - else  
27 - puts "Could not find any bad votes. Yay."  
28 - end 6 + badvotes = []
  7 + #might want to optimize later to not start from the beginning each time
  8 + STDOUT.sync = true
  9 + Vote.find_each(:batch_size => 10000, :include => :appearance) do |v|
  10 + next if v.nil? || v.appearance.nil?
  11 + server_response_time = v.created_at.to_f - v.appearance.created_at.to_f
  12 + if v.time_viewed && v.time_viewed/1000 > server_response_time
  13 + badvotes << v
  14 + print "."
  15 + end
  16 + end
  17 + puts "\n"
  18 +
  19 + if badvotes.any?
  20 +
  21 + badvotes.each do |v|
  22 + v.time_viewed = nil
  23 + v.missing_response_time_exp = "invalid"
  24 + v.save!
  25 + end
  26 + else
  27 + puts "Could not find any bad votes. Yay."
  28 + end
29 end 29 end
30 - 30 +
31 task(:associate_skips_with_appearances => :environment) do 31 task(:associate_skips_with_appearances => :environment) do
32 - skips_to_fix = Skip.find(:all, :conditions => {:appearance_id => nil})  
33 - skips_to_fix.each do |skip|  
34 - puts "Skip #{skip.id} : "  
35 - possible_appearances = skip.skipper.appearances.find(:all, :conditions => {:prompt_id => skip.prompt_id})  
36 - if possible_appearances.nil? || possible_appearances.empty?  
37 - puts " I couldn't find any matches!"  
38 - skip.delete  
39 - next  
40 - end  
41 - if possible_appearances.size > 1  
42 - puts " More than one possible appearance"  
43 - possible_appearances.delete_if{|a| a.answered?}  
44 - if possible_appearances.size > 1 || possible_appearances.size == 0  
45 - puts" And I couldn't narrow it down.... moving on"  
46 - skip.delete  
47 - next  
48 - end  
49 - end  
50 - possible_appearance = possible_appearances.first  
51 - if possible_appearance.answered?  
52 - puts " This appearance has been answered already! Moving on"  
53 - skip.delete  
54 - else  
55 - puts " MATCH"  
56 - skip.appearance_id = possible_appearance.id  
57 - skip.save!  
58 - end  
59 - end 32 + skips_to_fix = Skip.find(:all, :conditions => {:appearance_id => nil})
  33 + skips_to_fix.each do |skip|
  34 + puts "Skip #{skip.id} : "
  35 + possible_appearances = skip.skipper.appearances.find(:all, :conditions => {:prompt_id => skip.prompt_id})
  36 + if possible_appearances.nil? || possible_appearances.empty?
  37 + puts " I couldn't find any matches!"
  38 + skip.delete
  39 + next
  40 + end
  41 + if possible_appearances.size > 1
  42 + puts " More than one possible appearance"
  43 + possible_appearances.delete_if{|a| a.answered?}
  44 + if possible_appearances.size > 1 || possible_appearances.size == 0
  45 + puts" And I couldn't narrow it down.... moving on"
  46 + skip.delete
  47 + next
  48 + end
  49 + end
  50 + possible_appearance = possible_appearances.first
  51 + if possible_appearance.answered?
  52 + puts " This appearance has been answered already! Moving on"
  53 + skip.delete
  54 + else
  55 + puts " MATCH"
  56 + skip.appearance_id = possible_appearance.id
  57 + skip.save!
  58 + end
  59 + end
60 end 60 end
61 - 61 +
62 task(:move_vote_and_skip_ids_to_appearance => :environment) do 62 task(:move_vote_and_skip_ids_to_appearance => :environment) do
63 - #Vote.find_each do |v|  
64 - # @appearance = Appearance.find(v.appearance_id)  
65 -# @appearance.answerable = v  
66 -# @appearance.save  
67 -# if v.id % 1000 == 0  
68 -# puts v.id  
69 -# end  
70 -# end  
71 - Skip.find_each do |s|  
72 - if s.appearance_id  
73 - @appearance = Appearance.find(s.appearance_id)  
74 -  
75 - if @appearance.answerable  
76 - puts "Appearance #{@appearance.id} has more than one skip!"  
77 - else  
78 - @appearance.answerable = s  
79 - @appearance.save  
80 - end  
81 - end 63 + #Vote.find_each do |v|
  64 + # @appearance = Appearance.find(v.appearance_id)
  65 + # @appearance.answerable = v
  66 + # @appearance.save
  67 + # if v.id % 1000 == 0
  68 + # puts v.id
  69 + # end
  70 + # end
  71 + Skip.find_each do |s|
  72 + if s.appearance_id
  73 + @appearance = Appearance.find(s.appearance_id)
  74 +
  75 + if @appearance.answerable
  76 + puts "Appearance #{@appearance.id} has more than one skip!"
  77 + else
  78 + @appearance.answerable = s
  79 + @appearance.save
  80 + end
82 end 81 end
  82 + end
83 end 83 end
84 84
85 task(:remove_double_counted_votes_with_same_appearance => :environment) do 85 task(:remove_double_counted_votes_with_same_appearance => :environment) do
86 86
87 - votes_with_no_appearance = []  
88 - Vote.find_each(:include => :appearance) do |v|  
89 - puts v.id if v.id % 1000 == 0 87 + votes_with_no_appearance = []
  88 + Vote.find_each(:include => :appearance) do |v|
  89 + puts v.id if v.id % 1000 == 0
  90 +
  91 + votes_with_no_appearance << v if v.appearance.nil?
  92 + end
90 93
91 - votes_with_no_appearance << v if v.appearance.nil?  
92 - end  
93 -  
94 - skips_with_no_appearance = []  
95 - Skip.find_each(:include => :appearance) do |s|  
96 - puts s.id if s.id % 1000 == 0 94 + skips_with_no_appearance = []
  95 + Skip.find_each(:include => :appearance) do |s|
  96 + puts s.id if s.id % 1000 == 0
97 97
98 - skips_with_no_appearance << s if s.appearance.nil?  
99 - end 98 + skips_with_no_appearance << s if s.appearance.nil?
  99 + end
100 100
101 101
102 - puts "#{votes_with_no_appearance.size} Votes"  
103 - puts "#{skips_with_no_appearance.size} Skips" 102 + puts "#{votes_with_no_appearance.size} Votes"
  103 + puts "#{skips_with_no_appearance.size} Skips"
104 104
105 - votes_with_no_appearance.each do |v|  
106 - v.valid_record = false  
107 - v.validity_information = "No associated appearance object"  
108 - v.save!  
109 - end 105 + votes_with_no_appearance.each do |v|
  106 + v.valid_record = false
  107 + v.validity_information = "No associated appearance object"
  108 + v.save!
  109 + end
110 110
111 - skips_with_no_appearance.each do |s|  
112 - s.valid_record = false  
113 - s.validity_information = "No associated appearance object"  
114 - s.save!  
115 - end 111 + skips_with_no_appearance.each do |s|
  112 + s.valid_record = false
  113 + s.validity_information = "No associated appearance object"
  114 + s.save!
  115 + end
116 116
117 end 117 end
118 118
119 #call this by doing rake prune_db:populate_seed_ideas['blahblah',questionnum], where blahblah is the filename 119 #call this by doing rake prune_db:populate_seed_ideas['blahblah',questionnum], where blahblah is the filename
120 task(:populate_seed_ideas, :args1, :args2, :needs => :environment) do | task, arguments| 120 task(:populate_seed_ideas, :args1, :args2, :needs => :environment) do | task, arguments|
121 - filename = arguments[:args1]  
122 - question_num = arguments[:args2] 121 + filename = arguments[:args1]
  122 + question_num = arguments[:args2]
123 123
124 - puts filename  
125 - puts question_num 124 + puts filename
  125 + puts question_num
126 126
127 - q = Question.find(question_num)  
128 - creator_id = q.creator_id 127 + q = Question.find(question_num)
  128 + creator_id = q.creator_id
129 129
130 - File.open(filename, "r") do |infile|  
131 - while( data= infile.gets)  
132 - c = Choice.new(:creator_id => creator_id,  
133 - :question_id => q.id,  
134 - :active => true,  
135 - :data => data.chomp) 130 + File.open(filename, "r") do |infile|
  131 + while( data= infile.gets)
  132 + c = Choice.new(:creator_id => creator_id,
  133 + :question_id => q.id,
  134 + :active => true,
  135 + :data => data.chomp)
136 136
137 - c.save  
138 - end  
139 - end 137 + c.save
  138 + end
  139 + end
140 140
141 end 141 end
142 142
@@ -147,12 +147,12 @@ namespace :prune_db do @@ -147,12 +147,12 @@ namespace :prune_db do
147 question = Question.find(question_id) 147 question = Question.find(question_id)
148 148
149 orphaned_votes = Vote.find(:all, 149 orphaned_votes = Vote.find(:all,
150 - :select => "votes.id",  
151 - :joins => "LEFT JOIN appearances ON (votes.id = appearances.answerable_id AND answerable_type <> 'Skip')",  
152 - :conditions => ["answerable_id IS NULL AND votes.valid_record = 1 AND votes.question_id = ?", question.id]) 150 + :select => "votes.id",
  151 + :joins => "LEFT JOIN appearances ON (votes.id = appearances.answerable_id AND answerable_type <> 'Skip')",
  152 + :conditions => ["answerable_id IS NULL AND votes.valid_record = 1 AND votes.question_id = ?", question.id])
153 puts "Question ##{question.id} has #{orphaned_votes.count} orphaned votes" 153 puts "Question ##{question.id} has #{orphaned_votes.count} orphaned votes"
154 orphaned_votes.each do |orphaned_vote_id| 154 orphaned_votes.each do |orphaned_vote_id|
155 - orphaned_vote = Vote.find(orphaned_vote_id.id) 155 + orphaned_vote = Vote.find(orphaned_vote_id.id)
156 156
157 # attempt to find sibling vote 157 # attempt to find sibling vote
158 # sibling vote is one that is valid has the same voter and prompt, 158 # sibling vote is one that is valid has the same voter and prompt,