From f8f4c55f893db68f3b4100ce9f020b609a5c6c3e Mon Sep 17 00:00:00 2001 From: yackob03 Date: Wed, 30 Oct 2013 13:22:00 -0400 Subject: [PATCH 1/3] Close the db connections on the workers occasionally. --- workers/diffsworker.py | 5 +++++ workers/dockerfilebuild.py | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/workers/diffsworker.py b/workers/diffsworker.py index 62ea36d81..ce81b96f0 100644 --- a/workers/diffsworker.py +++ b/workers/diffsworker.py @@ -7,6 +7,7 @@ import argparse from apscheduler.scheduler import Scheduler from data.queue import image_diff_queue +from data.database import db as db_connection from endpoints.registry import process_image_changes @@ -37,6 +38,10 @@ def process_work_items(): logger.debug('No more work.') + if not db_connection.is_closed(): + logger.debug('Closing thread db connection.') + db_connection.close() + def start_worker(): logger.debug("Scheduling worker.") diff --git a/workers/dockerfilebuild.py b/workers/dockerfilebuild.py index e472e2116..4cdeb0e70 100644 --- a/workers/dockerfilebuild.py +++ b/workers/dockerfilebuild.py @@ -15,6 +15,7 @@ from requests.exceptions import ConnectionError from data.queue import dockerfile_build_queue from data.userfiles import UserRequestFiles from data import model +from data.database import db as db_connection from app import app @@ -201,6 +202,11 @@ def babysit_builder(request): logger.exception('Exception processing job: %s' % outer_ex.message) return False + finally: + if not db_connection.is_closed(): + logger.debug('Closing thread db connection.') + db_connection.close() + def process_work_items(pool): logger.debug('Getting work item from queue.') @@ -231,6 +237,10 @@ def process_work_items(pool): logger.debug('No more work.') + if not db_connection.is_closed(): + logger.debug('Closing thread db connection.') + db_connection.close() + def start_worker(): pool = ThreadPool(3) From b9cdf93758a5d24f0562c74b7154fcaa54b613d5 Mon Sep 17 00:00:00 2001 From: yackob03 Date: Wed, 30 Oct 2013 13:23:09 -0400 Subject: [PATCH 2/3] Make the quay support a mailto link. --- static/partials/view-repo.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/static/partials/view-repo.html b/static/partials/view-repo.html index 77a574b5a..2efe29be1 100644 --- a/static/partials/view-repo.html +++ b/static/partials/view-repo.html @@ -65,7 +65,7 @@
-
Your build is currently processing, if this takes longer than an hour, please contact quay support
+
Your build is currently processing, if this takes longer than an hour, please contact Quay.io support
From 9dcf427f99c9f6f44b6df5d437e88b90521b0747 Mon Sep 17 00:00:00 2001 From: yackob03 Date: Wed, 30 Oct 2013 13:40:55 -0400 Subject: [PATCH 3/3] Remove an unnecessary check from the listImages function. --- static/js/controllers.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/static/js/controllers.js b/static/js/controllers.js index 1ea6fd055..d7940ece6 100644 --- a/static/js/controllers.js +++ b/static/js/controllers.js @@ -402,8 +402,6 @@ function RepoCtrl($scope, Restangular, $routeParams, $rootScope, $location, $tim }; var listImages = function() { - if ($scope.imageHistory) { return; } - var imageFetch = Restangular.one('repository/' + namespace + '/' + name + '/image/'); imageFetch.get().then(function(resp) { $scope.imageHistory = resp.images;