From 0efccc363b863be69521773e6e5cd89e0e1becef Mon Sep 17 00:00:00 2001 From: Mateus Rambo Strey <mars11@inf.ufpr.br> Date: Wed, 28 Oct 2015 10:13:47 -0200 Subject: [PATCH] fix score worker --- app/workers/score_calculator_worker.rb | 30 ++++++++++++++------------ config/sidekiq.yml | 2 +- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/app/workers/score_calculator_worker.rb b/app/workers/score_calculator_worker.rb index 5effb8dfb..308f6c824 100644 --- a/app/workers/score_calculator_worker.rb +++ b/app/workers/score_calculator_worker.rb @@ -4,26 +4,28 @@ class ScoreCalculatorWorker include RepositoriesProxy def perform(rid) - weights = {"thumbnail": 40, "likes": 20, "views": 10, "description": 30} - object = learning_object_repository.find(rid) - score = 0 + unless object.blank? + weights = {"thumbnail": 40, "likes": 20, "views": 10, "description": 30} + + score = 0 - # 40 points if it has thumbnail - score += weights[:thumbnail] unless object.thumbnail.empty? + # 40 points if it has thumbnail + score += weights[:thumbnail] unless object.thumbnail.blank? - # 1 point per like - likes = learning_object_repository.count_likes(object) - score += (likes / learning_object_repository.max_likes)*weights[:likes] unless likes < 1 + # 1 point per like + likes = learning_object_repository.count_likes(object) + score += (likes / learning_object_repository.max_likes)*weights[:likes] unless likes < 1 - # 1 point per view - views = learning_object_repository.count_views(object) - score += (views / learning_object_repository.max_views)*weights[:views] unless views < 1 + # 1 point per view + views = learning_object_repository.count_views(object) + score += (views / learning_object_repository.max_views)*weights[:views] unless views < 1 - # 30 points if it has description - score += weights[:description] unless object.description.empty? + # 30 points if it has description + score += weights[:description] unless object.description.blank? - learning_object_repository.update_property(object, 'score', score) + learning_object_repository.update_property(object, 'score', score) + end end end diff --git a/config/sidekiq.yml b/config/sidekiq.yml index fb9ad31f7..dcbb188e0 100644 --- a/config/sidekiq.yml +++ b/config/sidekiq.yml @@ -14,7 +14,7 @@ # :daemon: true development: &development - concurrency: 5 + :concurrency: 8 host: localhost port: 6379 -- GitLab