X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fdatabase.py;h=9185d0a3f54fd0c77e16df1e0dba623ebbc3bff6;hb=e79e9a1395528354b5978fc4b92a8fcdd1559d70;hp=3a6c9aec341c8c991f0f9ec7f50bc67c77b9ec00;hpb=7a7563b8e19f99783505669ba603ef2d534c6603;p=dak.git diff --git a/daklib/database.py b/daklib/database.py index 3a6c9aec..9185d0a3 100755 --- a/daklib/database.py +++ b/daklib/database.py @@ -41,6 +41,7 @@ maintainer_cache = {} fingerprint_id_cache = {} queue_id_cache = {} uid_id_cache = {} +suite_version_cache = {} ################################################################################ @@ -223,25 +224,26 @@ def get_source_id (source, version): return source_id -def get_testing_version(source): - global testing_version_cache +def get_suite_version(source, suite): + global suite_version_cache + cache_key = "%s_%s" % (source, suite) - if testing_version_cache.has_key(source): - return testing_version_cache[source] + if suite_version_cache.has_key(cache_key): + return suite_version_cache[cache_key] - q = Upload.projectB.query(""" + q = projectB.query(""" SELECT s.version FROM source s, suite su, src_associations sa WHERE sa.source=s.id AND sa.suite=su.id - AND su.suite_name='testing' + AND su.suite_name='%s' AND s.source='%s'""" - % (source)) + % (suite, source)) if not q.getresult(): return None version = q.getresult()[0][0] - testing_version_cache[source] = version + suite_version_cache[cache_key] = version return version @@ -358,10 +360,10 @@ def get_or_set_queue_id (queue): ################################################################################ -def set_files_id (filename, size, md5sum, location_id): +def set_files_id (filename, size, md5sum, sha1sum, sha256sum, location_id): global files_id_cache - projectB.query("INSERT INTO files (filename, size, md5sum, location) VALUES ('%s', %d, '%s', %d)" % (filename, long(size), md5sum, location_id)) + projectB.query("INSERT INTO files (filename, size, md5sum, sha1sum, sha256sum, location) VALUES ('%s', %d, '%s', '%s', '%s', %d)" % (filename, long(size), md5sum, sha1sum, sha256sum, location_id)) return get_files_id (filename, size, md5sum, location_id)