diff --git a/data/model/repositoryactioncount.py b/data/model/repositoryactioncount.py index 66c1f9c4c..4716082c1 100644 --- a/data/model/repositoryactioncount.py +++ b/data/model/repositoryactioncount.py @@ -41,7 +41,7 @@ def find_uncounted_repository(): .order_by(db_random_func()).get()) return to_count except Repository.DoesNotExist: - return 0 + return None def count_repository_actions(to_count): diff --git a/workers/repositoryactioncounter.py b/workers/repositoryactioncounter.py index 9def95f25..d80389a6d 100644 --- a/workers/repositoryactioncounter.py +++ b/workers/repositoryactioncounter.py @@ -19,21 +19,22 @@ class RepositoryActionCountWorker(Worker): to_count = model.repositoryactioncount.find_uncounted_repository() if to_count is None: logger.debug('No further repositories to count') - return + return False logger.debug('Found repository #%s to count', to_count.id) was_counted = model.repositoryactioncount.count_repository_actions(to_count) if not was_counted: logger.debug('Repository #%s was counted by another worker', to_count.id) - return + return False logger.debug('Updating search score for repository #%s', to_count.id) was_updated = model.repositoryactioncount.update_repository_score(to_count) if not was_updated: logger.debug('Repository #%s had its search score updated by another worker', to_count.id) - return + return False logger.debug('Repository #%s search score updated', to_count.id) + return True if __name__ == "__main__": worker = RepositoryActionCountWorker() diff --git a/workers/test/test_repositoryactioncounter.py b/workers/test/test_repositoryactioncounter.py index e2dd36d83..97ae898bc 100644 --- a/workers/test/test_repositoryactioncounter.py +++ b/workers/test/test_repositoryactioncounter.py @@ -7,4 +7,7 @@ def test_repositoryactioncount(app): database.RepositorySearchScore.delete().execute() rac = RepositoryActionCountWorker() - rac._count_repository_actions() + while rac._count_repository_actions(): + continue + +