[Reproducible-commits] [misc] 02/02: clean-notes: don't be crazy and think you can do ~800 remote SQL queries fast enough to avoid my curses

Mattia Rizzolo mattia at mapreri.org
Wed Jul 8 10:15:13 UTC 2015


This is an automated email from the git hooks/post-receive script.

mapreri-guest pushed a commit to branch master
in repository misc.

commit b4b74ef916f8f003ba3c52763f6e9e83c7dcb893
Author: Mattia Rizzolo <mattia at mapreri.org>
Date:   Wed Jul 8 10:14:39 2015 +0000

    clean-notes: don't be crazy and think you can do ~800 remote SQL queries fast enough to avoid my curses
---
 clean-notes | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/clean-notes b/clean-notes
index 8c55711..05a47f1 100755
--- a/clean-notes
+++ b/clean-notes
@@ -291,14 +291,6 @@ def find_old_notes(testedpkgs, notes):
     return toremove
 
 
-def is_virtual_package(package):
-    query = "SELECT source FROM sources WHERE source='%s'" % package
-    rows = query_udd(query)
-    if len(rows) > 0:
-        return False
-    return True
-
-
 def get_bugs():
     query = 'SELECT * FROM bugs_usertags ' + \
             "WHERE email='reproducible-builds at lists.alioth.debian.org'"
@@ -332,17 +324,20 @@ def parse_bugs(bugs):
     OR = ''
     for bug in bugs_list[:-1]:
         if not [i for i in bugs[bug] if i in ignored_tags]:
-            ids += OR + 'id=' + str(bug)
+            ids += OR + 'b.id=' + str(bug)
             OR = ' OR '
     if not [i for i in bugs[bugs_list[-1]] if i in ignored_tags]:
-        ids += OR + 'id=' + str(bugs_list[-1])
-    query = """SELECT id, source, done FROM bugs WHERE %s""" % ids
+        ids += OR + 'b.id=' + str(bugs_list[-1])
+    # the join avoid picking virtual packages
+    query = "SELECT DISTINCT b.id, b.source, b.done "
+    query += "FROM bugs AS b JOIN sources AS s ON b.source=s.source "
+    query += "WHERE %s""" % ids
+    log.debug(query)
     rows = query_udd(query)
+    log.info(str(len(rows)) + ' bugs found')
     for item in rows:
         if item[2]:  # do not consider closed bugs
             continue
-        if is_virtual_package(item[1]):
-            continue
         try:
             packages[item[1]]['bugs'].append(item[0])
         except KeyError:

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/misc.git



More information about the Reproducible-commits mailing list