From 4575a792efaf0fe294c8aac96348efa85c13e7c3 Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Tue, 31 Aug 2010 15:22:54 +0200 Subject: [PATCH] [entropy.server] improve reliability of Server._setup_repository_package_filename Providing the EntropyRepository instance currently in use is much better than opening a new one. --- libraries/entropy/server/interfaces/main.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/libraries/entropy/server/interfaces/main.py b/libraries/entropy/server/interfaces/main.py index b975e657d..7b4d29f27 100644 --- a/libraries/entropy/server/interfaces/main.py +++ b/libraries/entropy/server/interfaces/main.py @@ -4216,8 +4216,8 @@ class ServerRepositoryMixin: header = darkred(" # ") ) - download_url = self._setup_repository_package_filename(idpackage, - repo = repo) + download_url = self._setup_repository_package_filename(dbconn, + idpackage) destination_path = self.complete_local_upload_package_path( download_url, repo = repo) destination_dir = os.path.dirname(destination_path) @@ -4232,18 +4232,16 @@ class ServerRepositoryMixin: return idpackage, destination_path # this function changes the final repository package filename - def _setup_repository_package_filename(self, idpackage, repo = None): - - dbconn = self.open_server_repository(read_only = False, - no_upload = True, repo = repo) + def _setup_repository_package_filename(self, dbconn, idpackage): downloadurl = dbconn.retrieveDownloadURL(idpackage) packagerev = dbconn.retrieveRevision(idpackage) downloaddir = os.path.dirname(downloadurl) downloadfile = os.path.basename(downloadurl) # add revision - downloadfile = downloadfile[:-5]+"~%s%s" % (packagerev, - etpConst['packagesext'],) + pkg_ext = etpConst['packagesext'] + downloadfile = downloadfile[:-len(pkg_ext)]+"~%s%s" % (packagerev, + pkg_ext,) downloadurl = os.path.join(downloaddir, downloadfile) # update url