]> git.decadent.org.uk Git - dak.git/commitdiff
Merge remote-tracking branch 'ansgar/control-suite-sort-by-version' into merge
authorJoerg Jaspert <joerg@debian.org>
Sun, 4 Sep 2011 12:50:31 +0000 (14:50 +0200)
committerJoerg Jaspert <joerg@debian.org>
Sun, 4 Sep 2011 12:50:31 +0000 (14:50 +0200)
* ansgar/control-suite-sort-by-version:
  control-suite: sort list of desired packages as intended

Signed-off-by: Joerg Jaspert <joerg@debian.org>
108 files changed:
config/debian/lintian.tags
dak/add_user.py
dak/admin.py
dak/check_archive.py
dak/clean_queues.py
dak/clean_suites.py
dak/control_suite.py
dak/dakdb/update1.py
dak/dakdb/update10.py
dak/dakdb/update11.py
dak/dakdb/update12.py
dak/dakdb/update13.py
dak/dakdb/update14.py
dak/dakdb/update15.py
dak/dakdb/update16.py
dak/dakdb/update17.py
dak/dakdb/update18.py
dak/dakdb/update19.py
dak/dakdb/update2.py
dak/dakdb/update20.py
dak/dakdb/update21.py
dak/dakdb/update22.py
dak/dakdb/update23.py
dak/dakdb/update24.py
dak/dakdb/update25.py
dak/dakdb/update26.py
dak/dakdb/update27.py
dak/dakdb/update28.py
dak/dakdb/update29.py
dak/dakdb/update3.py
dak/dakdb/update30.py
dak/dakdb/update31.py
dak/dakdb/update32.py
dak/dakdb/update33.py
dak/dakdb/update34.py
dak/dakdb/update35.py
dak/dakdb/update36.py
dak/dakdb/update37.py
dak/dakdb/update38.py
dak/dakdb/update39.py
dak/dakdb/update4.py
dak/dakdb/update40.py
dak/dakdb/update41.py
dak/dakdb/update42.py
dak/dakdb/update43.py
dak/dakdb/update44.py
dak/dakdb/update45.py
dak/dakdb/update46.py
dak/dakdb/update47.py
dak/dakdb/update48.py
dak/dakdb/update49.py
dak/dakdb/update5.py
dak/dakdb/update50.py
dak/dakdb/update51.py
dak/dakdb/update52.py
dak/dakdb/update53.py
dak/dakdb/update54.py
dak/dakdb/update55.py
dak/dakdb/update56.py
dak/dakdb/update57.py
dak/dakdb/update58.py
dak/dakdb/update59.py
dak/dakdb/update6.py
dak/dakdb/update60.py
dak/dakdb/update61.py
dak/dakdb/update62.py
dak/dakdb/update63.py
dak/dakdb/update64.py
dak/dakdb/update65.py
dak/dakdb/update66.py
dak/dakdb/update67.py [new file with mode: 0755]
dak/dakdb/update68.py [new file with mode: 0755]
dak/dakdb/update7.py
dak/dakdb/update8.py
dak/dakdb/update9.py
dak/examine_package.py
dak/generate_index_diffs.py
dak/graph.py
dak/import_known_changes.py
dak/import_users_from_passwd.py
dak/init_dirs.py
dak/make_changelog.py
dak/process_new.py
dak/process_policy.py
dak/process_upload.py
dak/queue_report.py
dak/rm.py
dak/show_deferred.py
dak/transitions.py
dak/update_db.py
daklib/contents.py
daklib/daklog.py
daklib/dakmultiprocessing.py
daklib/dbconn.py
daklib/filewriter.py
daklib/formats.py
daklib/holding.py
daklib/metadata.py
daklib/queue.py
daklib/srcformats.py
daklib/textutils.py
daklib/utils.py
setup/README
setup/current_schema.sql
setup/schema_65.sql [deleted file]
setup/schema_68.sql [new file with mode: 0644]
tests/test_parse_changes.py
tools/queue_rss.py

index e341c8a3b4d841b5259adf3543d06db1b03c5537..188c105119c101001867d714a77cf59ad871a908 100644 (file)
@@ -20,6 +20,7 @@ lintian:
     - wrong-file-owner-uid-or-gid
     - install-info-used-in-maintainer-script
     - missing-pre-dependency-on-multiarch-support
+    - bad-perm-for-file-in-etc-sudoers.d
   fatal:
     - debian-control-file-uses-obsolete-national-encoding
     - malformed-deb-archive
@@ -80,3 +81,4 @@ lintian:
     - dir-or-file-in-mnt
     - dir-or-file-in-opt
     - dir-or-file-in-srv
+    - udeb-uses-non-gzip-data-tarball
index f2391bd65acf59cf64a9613b4c5fbeb111dbb060..8ab4d2302077e41a69487b15203652bcad2cbac9 100755 (executable)
@@ -66,7 +66,7 @@ def HashPass(Password):
         Salt = Salt + SaltVals[ord(Rand.read(1)[0]) % len(SaltVals)]
     Pass = crypt.crypt(Password,Salt)
     if len(Pass) < 14:
-        raise "Password Error", "MD5 password hashing failed, not changing the password!"
+        raise RuntimeError("MD5 password hashing failed, not changing the password!")
     return Pass
 
 ################################################################################
index fe369b51a753ca08add8ad22657e94f4644a4c9e..e109877faf0d5606fd5fb1ebe4049f973a821da5 100755 (executable)
@@ -137,9 +137,9 @@ def __architecture_add(d, args):
                 else:
                     warn("W: Cannot find suite %s" % su)
             s.commit()
-        except IntegrityError, e:
+        except IntegrityError as e:
             die("E: Integrity error adding architecture %s (it probably already exists)" % args[2])
-        except SQLAlchemyError, e:
+        except SQLAlchemyError as e:
             die("E: Error adding architecture %s (%s)" % (args[2], e))
     print "Architecture %s added" % (args[2])
 
@@ -154,9 +154,9 @@ def __architecture_rm(d, args):
                 die("E: Cannot find architecture %s" % args[2])
             s.delete(a)
             s.commit()
-        except IntegrityError, e:
+        except IntegrityError as e:
             die("E: Integrity error removing architecture %s (suite-arch entries probably still exist)" % args[2])
-        except SQLAlchemyError, e:
+        except SQLAlchemyError as e:
             die("E: Error removing architecture %s (%s)" % (args[2], e))
     print "Architecture %s removed" % args[2]
 
@@ -228,9 +228,9 @@ def __suite_add(d, args, addallarches=False):
             suite.srcformats = s.query(SrcFormat).all()
             s.add(suite)
             s.flush()
-        except IntegrityError, e:
+        except IntegrityError as e:
             die("E: Integrity error adding suite %s (it probably already exists)" % suite_name)
-        except SQLAlchemyError, e:
+        except SQLAlchemyError as e:
             die("E: Error adding suite %s (%s)" % (suite_name, e))
     print "Suite %s added" % (suite_name)
 
@@ -313,9 +313,9 @@ def __suite_architecture_add(d, args):
         try:
             suite.architectures.append(arch)
             s.commit()
-        except IntegrityError, e:
+        except IntegrityError as e:
             die("E: Can't add suite-architecture entry (%s, %s) - probably already exists" % (args[2].lower(), args[3].lower()))
-        except SQLAlchemyError, e:
+        except SQLAlchemyError as e:
             die("E: Can't add suite-architecture entry (%s, %s) - %s" % (args[2].lower(), args[3].lower(), e))
 
     print "Added suite-architecture entry for %s, %s" % (args[2].lower(), args[3].lower())
@@ -338,9 +338,9 @@ def __suite_architecture_rm(d, args):
                 die("E: architecture %s not found in suite %s" % (arch_string, suite_name))
             suite.architectures.remove(architecture)
             s.commit()
-        except IntegrityError, e:
+        except IntegrityError as e:
             die("E: Can't remove suite-architecture entry (%s, %s) - it's probably referenced" % (args[2].lower(), args[3].lower()))
-        except SQLAlchemyError, e:
+        except SQLAlchemyError as e:
             die("E: Can't remove suite-architecture entry (%s, %s) - %s" % (args[2].lower(), args[3].lower(), e))
 
     print "Removed suite-architecture entry for %s, %s" % (args[2].lower(), args[3].lower())
index 1fb8560baaa628bb61abec14f56adce4094b50ac..89c3dcbd82d690141e01bc2c05d981d8f5f99b72 100755 (executable)
@@ -164,7 +164,7 @@ def check_dscs():
         except CantOpenError:
             utils.warn("missing dsc file (%s)" % f)
             count += 1
-        except Exception, e:
+        except Exception as e:
             utils.warn("miscellaneous error parsing dsc file (%s): %s" % (f, str(e)))
             count += 1
 
index 390c2551b85d02213b77bbde419bd6869d66a61c..e6e4f76cb32b23b77da55885e8d9022d95e10bb6 100755 (executable)
@@ -86,7 +86,7 @@ def init (cnf):
     # Ensure a directory exists to remove files to
     if not Options["No-Action"]:
         if not os.path.exists(del_dir):
-            os.makedirs(del_dir, 02775)
+            os.makedirs(del_dir, 0o2775)
         if not os.path.isdir(del_dir):
             utils.fubar("%s must be a directory." % (del_dir))
 
@@ -100,7 +100,7 @@ def init (cnf):
 
     try:
         os.chdir(incoming)
-    except OSError, e:
+    except OSError as e:
         utils.fubar("Cannot chdir to %s" % incoming)
 
 # Remove a file to the morgue
@@ -118,7 +118,7 @@ def remove (from_dir, f):
         if os.path.exists(dest_filename):
             dest_filename = utils.find_next_free(dest_filename, 10)
             Logger.log(["change destination file name", os.path.basename(dest_filename)])
-        utils.move(f, dest_filename, 0660)
+        utils.move(f, dest_filename, 0o660)
     else:
         Logger.log(["skipping file because of permission problem", fname])
         utils.warn("skipping '%s', permission denied." % fname)
@@ -157,7 +157,7 @@ def flush_orphans ():
             changes = utils.parse_changes(changes_filename)
             files = utils.build_file_list(changes)
         except:
-            utils.warn("error processing '%s'; skipping it. [Got %s]" % (changes_filename, sys.exc_type))
+            utils.warn("error processing '%s'; skipping it. [Got %s]" % (changes_filename, sys.exc_info()[0]))
             continue
 
         dsc_files = {}
@@ -167,7 +167,7 @@ def flush_orphans ():
                     dsc = utils.parse_changes(f, dsc_file=1)
                     dsc_files = utils.build_file_list(dsc, is_a_dsc=1)
                 except:
-                    utils.warn("error processing '%s'; skipping it. [Got %s]" % (f, sys.exc_type))
+                    utils.warn("error processing '%s'; skipping it. [Got %s]" % (f, sys.exc_info()[0]))
                     continue
 
         # Ensure all the files we've seen aren't deleted
index 9713de3447f16825930ad029e018398dfb7b638c..7419b83b5496e9b3ecca15e19d71326b8e449be0 100755 (executable)
@@ -128,6 +128,7 @@ SELECT s.id, s.file, f.filename
         (SELECT sa.source FROM src_associations sa)
    AND s.id NOT IN
         (SELECT b.source FROM binaries b)
+   AND s.id NOT IN (SELECT esr.src_id FROM extra_src_references esr)
    AND f.id NOT IN
         (SELECT bqf.fileid FROM build_queue_files bqf)""")
 
@@ -171,6 +172,7 @@ SELECT s.id, s.file, f.filename
 SELECT f.id, f.filename FROM source s, files f, dsc_files df
   WHERE f.last_used IS NOT NULL AND s.id = df.source AND df.file = f.id
     AND ((EXISTS (SELECT 1 FROM src_associations sa WHERE sa.source = s.id))
+      OR (EXISTS (SELECT 1 FROM extra_src_references esr WHERE esr.src_id = s.id))
       OR (EXISTS (SELECT 1 FROM binaries b WHERE b.source = s.id))
       OR (EXISTS (SELECT 1 FROM build_queue_files bqf WHERE bqf.fileid = s.file)))""")
 
@@ -424,7 +426,7 @@ def main():
             max_delete = int(cnf["Clean-Suites::Options::Maximum"])
             if max_delete < 1:
                 utils.fubar("If given, Maximum must be at least 1")
-        except ValueError, e:
+        except ValueError as e:
             utils.fubar("If given, Maximum must be an integer")
     else:
         max_delete = None
index 54ccb0d5ab82a0878c89f0afc19f4dfadf89bcb6..236e36aa4cfbd005679f5f22f6f21a6de7d5d429 100755 (executable)
@@ -394,7 +394,7 @@ def main ():
 
     try:
         file_list = apt_pkg.ParseCommandLine(cnf.Cnf, Arguments, sys.argv);
-    except SystemError, e:
+    except SystemError as e:
         print "%s\n" % e
         usage(1)
     Options = cnf.SubTree("Control-Suite::Options")
index 0c83377387431f69dd4c615a96f4aef9cccf0a7d..21942765e560b056d167d3755e409fe73d5343c0 100755 (executable)
@@ -64,6 +64,6 @@ def do_update(self):
         print "Pausing for five seconds ..."
         time.sleep (5)
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy DM table updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy DM table updates, rollback issued. Error message : %s" % (str(msg)))
index 5cd4f30dc50899aa78933bf8d8602e6d975c350a..31c70d379206504bf48b56ef7570f2137bb1bbfe 100755 (executable)
@@ -51,6 +51,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '10' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply suite config updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply suite config updates, rollback issued. Error message : %s" % (str(msg)))
index a4797cb4bdf557e1634304403a9d6ffffd855e8d..17001d391f58c00719c5c29b607044154be6a83a 100755 (executable)
@@ -58,6 +58,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '11' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new comments update, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new comments update, rollback issued. Error message : %s" % (str(msg)))
index 890f51cb66c75a767693cec4762450b5ae394d55..21d44a4598103ddc54b2912eb616660f6de74fd4 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '12' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new update 12, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new update 12, rollback issued. Error message : %s" % (str(msg)))
index d5dbedced401efccdd3e09b0e5e2222feaa2039d..1696e75920ed9d6a7146f31336b68c7ab48a4fb8 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '13' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new update 13, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new update 13, rollback issued. Error message : %s" % (str(msg)))
index 4f1b1dac893c8dc247e19af533e98772e4c34b3a..575e5d234a2866433d49a0565dcd348d60b00a90 100755 (executable)
@@ -48,6 +48,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '14' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new update 14, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new update 14, rollback issued. Error message : %s" % (str(msg)))
index 535f9e67cc2bf5890e2213726d337bc9ada74119..7d6b52e7588e3988d52cba08b6e9729e1e92152b 100755 (executable)
@@ -79,6 +79,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '15' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply source format update 15, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply source format update 15, rollback issued. Error message : %s" % (str(msg)))
index eca9b48ea03c460def0f192d05ae6d4589b7cef6..6cd6dc4b1b7af19566cc26901e77588f6402a288 100755 (executable)
@@ -173,6 +173,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '16' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply ACLs update (16), rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply ACLs update (16), rollback issued. Error message : %s" % (str(msg)))
index beca9425020e6b3df6004eccdf6dea1299a54541..493640eb9ff6a79df097a345d17424a5ebbcc1ad 100755 (executable)
@@ -58,9 +58,9 @@ def do_update(self):
 
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new update 17, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new update 17, rollback issued. Error message : %s" % (str(msg)))
 
 
 
index ce0086f67e88af5b3a3a80e3ee6bb0da10f50145..bdf241084262522f86a95029b810ae17126c87ee 100755 (executable)
@@ -144,13 +144,13 @@ def do_update(self):
                         changes.changes = parse_changes(changesfile, signing_rules=-1)
                         changes.changes["fingerprint"] = check_signature(changesfile)
                         changes.add_known_changes(directory)
-                    except InvalidDscError, line:
+                    except InvalidDscError as line:
                         warn("syntax error in .dsc file '%s', line %s." % (f, line))
                         failure += 1
                     except ChangesUnicodeError:
                         warn("found invalid changes file, not properly utf-8 encoded")
                         failure += 1
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply knownchanges update 18, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply knownchanges update 18, rollback issued. Error message : %s" % (str(msg)))
index 49a4dbc71f24b5234e63e15fdabaf65b4b9826d5..61e607033f4b4c1a1454d6677c3c1d02679a01f6 100755 (executable)
@@ -102,6 +102,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '19' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply debversion update 19, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply debversion update 19, rollback issued. Error message : %s" % (str(msg)))
index 2e3cb446b55f1cedb985628f17524caa1520964b..0d9d387162fa45a9f0e23ae2ab1ab07fd86a352d 100755 (executable)
@@ -396,6 +396,6 @@ $$
 
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg)))
index f4e34cb96b56428791918a43642d4fa8f932e071..c1424ab2da502aa8c236dcfb4dc2d0f8ba1ad912 100755 (executable)
@@ -95,6 +95,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '20' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply debversion update 20, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply debversion update 20, rollback issued. Error message : %s" % (str(msg)))
index 8e36883f9eb7b4cdf9bfc80a322d9044fec64346..c91b6f1410e4cd486fd6fd4737a84d710326bd45 100755 (executable)
@@ -74,7 +74,7 @@ def do_update(self):
                 f = c.fetchone()
                 c.execute("""INSERT INTO queue_files (queueid, lastused, filename, fileid) VALUES
                                                      (%s, now(), %s, %s)""", (queue, filename[filename.rindex('/')+1:], f[0]))
-            except OSError, e:
+            except OSError as e:
                 print "Can't find file %s (%s)" % (filename, e)
 
         print "Dropping old queue_build table"
@@ -124,6 +124,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '21' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply queue_build 21, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply queue_build 21, rollback issued. Error message : %s" % (str(msg)))
index dbd7ced6023c1d3bf77b7c225ca1a4e4361d8211..5c852c67024f0b6a73e4595d51c3ae4f33067ebb 100755 (executable)
@@ -235,6 +235,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '22' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply queue_build 21, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply queue_build 21, rollback issued. Error message : %s" % (str(msg)))
index 48abf0162df781d6caa47518d5dc6bfa9ae749f2..4750c153b767fe21091a27865132b78cd091a9f1 100755 (executable)
@@ -58,7 +58,7 @@ CREATE VIEW srcfiles_suite_component AS
         c.execute("UPDATE config SET value = '23' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Database error, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Database error, rollback issued. Error message : %s" % (str(msg)))
 
index 4e8c505d5c62c01afd878ff1cf6e193ad41e8cb9..64deb96e9291bcfd5e5f102068131384fe943a3a 100755 (executable)
@@ -56,7 +56,7 @@ def do_update(self):
         c.execute("UPDATE config SET value = '24' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Database error, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Database error, rollback issued. Error message : %s" % (str(msg)))
 
index b2813d9118f820438676a54f9b7bf78aeb718b18..0ce8ab6e1298645203c4dad206bfe91efbc974ed 100755 (executable)
@@ -183,7 +183,7 @@ CREATE VIEW obsolete_all_associations AS
         c.execute("UPDATE config SET value = '25' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Database error, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Database error, rollback issued. Error message : %s" % (str(msg)))
 
index 1b9a7fc14b11089addf6f5171b7dcde140ddaf38..358f2ae46907ed5be49516dfe458e85aee523480 100755 (executable)
@@ -61,7 +61,7 @@ def do_update(self):
         c.execute("UPDATE config SET value = '26' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
             self.db.rollback()
-            raise DBUpdateError, "Database error, rollback issued. Error message : %s" % (str(msg))
+            raise DBUpdateError("Database error, rollback issued. Error message : %s" % (str(msg)))
 
index b06932b52ed1e20e89c4a7224627ed9d85d7d6dc..814e60150ad8ebba93e20bbf724f50ece1a2b00f 100755 (executable)
@@ -74,7 +74,7 @@ CREATE OR REPLACE VIEW bin_associations_binaries AS
         c.execute("UPDATE config SET value = '27' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.InternalError, msg:
+    except psycopg2.InternalError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Database error, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Database error, rollback issued. Error message : %s" % (str(msg)))
 
index 79b0e8db8250fb3e657edcf9daf9ba4fdb1706a5..1455ee3110284d3cdd4d48effd237f1d0a1fc2d0 100755 (executable)
@@ -265,7 +265,7 @@ $$ LANGUAGE plpythonu VOLATILE;""")
 
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new update 28, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new update 28, rollback issued. Error message : %s" % (str(msg)))
 
index d25c1011a56fbba16449f940f7972798b17f74c2..c77d99dad5229510534fd08ffc773914b7d71ba4 100644 (file)
@@ -47,6 +47,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '29' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg)))
index 5a5562fbedfe2659c5c2990f7ba125b3a25ac00c..f7a4e5026e3c79908c208040f5a46d9ab273169c 100755 (executable)
@@ -49,6 +49,6 @@ def do_update(self):
 
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy versioncmp removal, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy versioncmp removal, rollback issued. Error message : %s" % (str(msg)))
index 2d962749219a8ba513bbccb9517f622960928b5e..f68c74a34a5f7baaaeb5be8f59aa743ebfd6c777 100644 (file)
@@ -95,6 +95,6 @@ $$ LANGUAGE plpythonu VOLATILE SECURITY DEFINER;
         c.execute("UPDATE config SET value = '30' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg)))
index 8ebfe3424732447ee5c00331347f07f48d75b55e..7209178b3ca0a6d3347e2c8d4bd189264fe00f42 100644 (file)
@@ -94,7 +94,7 @@ $$ LANGUAGE plpythonu VOLATILE SECURITY DEFINER;
         c.execute("UPDATE config SET value = '31' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply process-new update 31, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply process-new update 31, rollback issued. Error message : %s" % (str(msg)))
 
index 98eaa4e6973fd063aacfb4085a89cdc7f5902063..59355c91a3af811c063caed8e8365767da7f3329 100755 (executable)
@@ -44,7 +44,7 @@ def do_update(self):
         c.execute("UPDATE config SET value = '32' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply build_queue update 32, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply build_queue update 32, rollback issued. Error message : %s" % (str(msg)))
 
index 9624ba627b93daf42d0ec3b99274f1dfe3635e97..5b0fe110d4dab1dad30ecf27c575d85ccd6db12a 100644 (file)
@@ -50,6 +50,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '33' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply build_queue update 33, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply build_queue update 33, rollback issued. Error message : %s' % (str(msg)))
index ea0535dba185543bb34b557f52f0e84cce4c9e5f..03f15739438bcae0ee28bf3f8ffc5194799495f1 100644 (file)
@@ -43,6 +43,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '34' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply build_queue update 34, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply build_queue update 34, rollback issued. Error message : %s' % (str(msg)))
index 335d70e5f67e3fc48f02fe71afeef1c6c9cf5f96..41d56674aff70d80e6666ae71a36c037b0880317 100644 (file)
@@ -45,6 +45,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '35' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply build_queue update 35, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply build_queue update 35, rollback issued. Error message : %s' % (str(msg)))
index d5810f6815069cc6376a003474d2b8e1debea52a..432e09f3653f65b1f0202bf126d407c18d796380 100644 (file)
@@ -43,6 +43,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '36' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply build_queue update 36, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply build_queue update 36, rollback issued. Error message : %s' % (str(msg)))
index 5a6714bbf0dd4138ff6871b8d7250022a40cb16f..7ab52e04ca52ab9580d700822392c9826a97d772 100755 (executable)
@@ -52,6 +52,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '37' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply table-colum update 37, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply table-colum update 37, rollback issued. Error message : %s' % (str(msg)))
index 583aa3ade53edb297011a9e1465250cbe43f66bd..da3a1d6596e9aa473a28f0fb6aa85a5557f94282 100755 (executable)
@@ -51,6 +51,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '38' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply table-column update 38, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply table-column update 38, rollback issued. Error message : %s' % (str(msg)))
index 8086b515f689c953344a055709762c2b306561c7..c02b9629f0d34536da1c2b5286754dfc5d289217 100644 (file)
@@ -42,6 +42,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '39' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply table-column update 39, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply table-column update 39, rollback issued. Error message : %s' % (str(msg)))
index 477944c830408548367e13710495bd26084bb905..938522ccd83cddacc7d9765cd360c2c6d034f1c5 100755 (executable)
@@ -64,6 +64,6 @@ def do_update(self):
 
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply sanity to suite_architecture table, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply sanity to suite_architecture table, rollback issued. Error message : %s" % (str(msg)))
index 062b0dd842adfac966a6805a1bb7e14c6bb02839..e3bb89e0570307331e6ab978790a48cc72b9b496 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '40' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 40, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 40, rollback issued. Error message : %s' % (str(msg)))
index 813a3b709e17a83488245ef748a70d7e44f6ce52..65661d3c420eae1c441ed948203bf1f9128e0b5e 100755 (executable)
@@ -61,6 +61,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '41' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 41, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 41, rollback issued. Error message : %s' % (str(msg)))
index 48bc9d61af4ccc8b9c6f83b4cbe9334dc668ee7e..3c51232c8735a98540208eba39a1ed4e715f4611 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '42' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply update 42, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply update 42, rollback issued. Error message : %s' % (str(msg)))
index 071541051a381dec7670ff209acfb14d95c593f8..430cc3581dc42c98a9666719612e2f004ba95418 100755 (executable)
@@ -46,6 +46,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '43' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply update 43, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply update 43, rollback issued. Error message : %s' % (str(msg)))
index 465f2fce6a86a1ef65475052fad7937615d8b8ca..bce1fe7db3fcd00934836e2f2899c8435662348c 100755 (executable)
@@ -47,6 +47,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '44' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 44, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 44, rollback issued. Error message : %s' % (str(msg)))
index 32ed04f086820de19dc630b4e0f97ca5a9e0b943..fe84c9be87627b1d800de02ad6b9e05c4e1b9b84 100755 (executable)
@@ -48,6 +48,6 @@ CREATE TABLE extra_src_references (
         c.execute("UPDATE config SET value = '45' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply update 45, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply update 45, rollback issued. Error message : %s' % (str(msg)))
index d1b2d3ac43ff8542e4af0bada52bf064d712f7c8..109a887aa93a0ceba459fd930d474e215c5aeb5f 100755 (executable)
@@ -72,6 +72,6 @@ CREATE TABLE source_metadata (
         c.execute("UPDATE config SET value = '46' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply update 46, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply update 46, rollback issued. Error message : %s' % (str(msg)))
index 81d9cd788f44b8eb3d5a1f7399a3fb1b3b867a35..a6626594fb99ed96ccd8bfa01d8a5e5c59e38e12 100755 (executable)
@@ -47,6 +47,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '47' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 47, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 47, rollback issued. Error message : %s' % (str(msg)))
index 67ea8c5b1ed795e011884005497a99043de4bf4e..63a8a0e656fa79058279a00fc2c8c07ab6b87f3d 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '48' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 48, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 48, rollback issued. Error message : %s' % (str(msg)))
index 5ff1545ca3ca4b2c9fd885d7d9310f3d7408952a..720f8cf3a2c070072f321753bb9205eda2a401fc 100755 (executable)
@@ -56,6 +56,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '49' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 49, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 49, rollback issued. Error message : %s' % (str(msg)))
index 49e338916b92f1a0b4ba9d16912d0059829bde12..a42e540cdabd01dc10c4f453fc5105fa2a2ecce0 100755 (executable)
@@ -46,6 +46,6 @@ def do_update(self):
 
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to recreate bin_assoc_by_arch view, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to recreate bin_assoc_by_arch view, rollback issued. Error message : %s" % (str(msg)))
index ae7ea4d0337158bba2205f940ea4892da012e20e..094998771033509d941db63c0438977ccebfdab1 100755 (executable)
@@ -42,6 +42,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '50' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 50, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 50, rollback issued. Error message : %s' % (str(msg)))
index 2aea858ec734516ec468822806486f51fb8eaf89..2d4c1a2c22bf849316fb5cac78e156d6be54f66d 100755 (executable)
@@ -53,6 +53,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '51' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 51, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 51, rollback issued. Error message : %s' % (str(msg)))
index d38ee26f91267763085b1be91f5e83214974fa84..aa7a10d16fa62e95650ab1cf10c48fc886aee2fb 100755 (executable)
@@ -61,6 +61,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '52' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 52, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 52, rollback issued. Error message : %s' % (str(msg)))
index 36a076f6e347e9edca11a4a76b4fc2adc7c185ce..92508257e08f7104f1931b62fc79ee265d89cfe8 100755 (executable)
@@ -50,6 +50,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '53' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 53, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 53, rollback issued. Error message : %s' % (str(msg)))
index e7676ef0b179fc0cd51d661479d6bdd51b228f48..c218cc670cf094f94188edcdc76be40836b3d102 100755 (executable)
@@ -47,6 +47,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '54' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 54, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 54, rollback issued. Error message : %s' % (str(msg)))
index 3328e85c251fa38c370889937ea48575a4eea27a..9e152227daaa2a96f2303ee3ae8e065f8539a4d2 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '55' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 55, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 55, rollback issued. Error message : %s' % (str(msg)))
index f04ebc87d6f5afcef2e50f2dda4beb633059ab2a..647f8c799ade92962a561f0f58d2fae2d2dbd263 100755 (executable)
@@ -85,6 +85,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '56' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 56, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 56, rollback issued. Error message : %s' % (str(msg)))
index 45a37dc683dcda6eb4e62d1cb2231deb7ad06539..db49db43427d67e7f5f03c0a5ad6df6b4fafd94a 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '57' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 57, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 57, rollback issued. Error message : %s' % (str(msg)))
index 8680fc25add77cc7b6954b3d513f70c6a7f504e1..9f10d31b93f8dbb30740027a7af9eee7846d07a4 100755 (executable)
@@ -85,6 +85,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '58' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 58, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 58, rollback issued. Error message : %s' % (str(msg)))
index 6417a370aa037a9cdb68357a793e3499c2e1fd15..fd6fea55e41229c09d0a97b153ee616488880556 100755 (executable)
@@ -51,6 +51,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '59' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 59, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 59, rollback issued. Error message : %s' % (str(msg)))
index 13d609669f03d3b0905827cd7174a06e0d836300..f3d11bbc82ad8f293338e8fc31b48dc4f653d7a1 100755 (executable)
@@ -87,6 +87,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '6' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy debversion updates, rollback issued. Error message : %s" % (str(msg)))
index 4cf6ee8f2a8970977ad7c19f1e54829c73bc1e7a..0173529628b31b583d040e70a9b1ffdbf3233b50 100755 (executable)
@@ -51,6 +51,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '60' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 60, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 60, rollback issued. Error message : %s' % (str(msg)))
index 570bb6bdd31263f3da5ec347d75a6446406b9031..3b18e0b37654e97950161f2580c2af525636be28 100755 (executable)
@@ -50,6 +50,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '61' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 61, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 61, rollback issued. Error message : %s' % (str(msg)))
index f320bbf0ba4d75e9adc3d695a7666dc62aaf6e57..7a47dca8f864c4c9bf8cb9f1d4d2c5a7e9c1bd69 100755 (executable)
@@ -42,6 +42,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '62' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 62, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 62, rollback issued. Error message : %s' % (str(msg)))
index 9b1187c6e19d9f814494e3074923ebf170425da0..e9e5c0f1912eb1b1aca643fcd8faaa7f0c9e2d65 100755 (executable)
@@ -54,6 +54,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '63' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 63, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 63, rollback issued. Error message : %s' % (str(msg)))
index bce9e94ae6258aba900dbf6ff0d33b403230d3d8..49ca75a8e4281e40c87d4d6c90d537da7dbfe112 100755 (executable)
@@ -44,6 +44,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '64' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 64, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 64, rollback issued. Error message : %s' % (str(msg)))
index 8dd83a1b24e51afcb68e9ad00b6dc8fd581df3a2..46730b5fcaaa1e7376ab000c453ada586e348ae5 100755 (executable)
@@ -46,6 +46,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '65' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 65, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 65, rollback issued. Error message : %s' % (str(msg)))
index af61c04a75a2c843c00b765fea206608fc642e37..d59306fa6536001990df09b3bb4fdee072ea21af 100755 (executable)
@@ -55,6 +55,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '66' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, 'Unable to apply sick update 66, rollback issued. Error message : %s' % (str(msg))
+        raise DBUpdateError('Unable to apply sick update 66, rollback issued. Error message : %s' % (str(msg)))
diff --git a/dak/dakdb/update67.py b/dak/dakdb/update67.py
new file mode 100755 (executable)
index 0000000..18c51d4
--- /dev/null
@@ -0,0 +1,199 @@
+#!/usr/bin/env python
+# coding=utf8
+
+"""
+Add audit schema and initial package table and triggers
+
+@contact: Debian FTP Master <ftpmaster@debian.org>
+@copyright: 2011 Mark Hymers <mhy@debian.org>
+@copyright: 2011 Ansgar Burchardt <ansgar@debian.org>
+@license: GNU General Public License version 2 or later
+"""
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+################################################################################
+
+import psycopg2
+from daklib.dak_exceptions import DBUpdateError
+from daklib.config import Config
+
+################################################################################
+def do_update(self):
+    """
+    Add audit schema and initial package table and triggers
+    """
+    print __doc__
+    try:
+        c = self.db.cursor()
+
+        c.execute("CREATE SCHEMA audit");
+        c.execute("GRANT USAGE on SCHEMA audit TO public")
+        c.execute("GRANT USAGE on SCHEMA audit TO ftpteam")
+        c.execute("GRANT USAGE on SCHEMA audit TO ftpmaster")
+
+        c.execute("""CREATE TABLE audit.package_changes (
+   changedate TIMESTAMP NOT NULL DEFAULT now(),
+   package TEXT NOT NULL,
+   version DEBVERSION NOT NULL,
+   architecture TEXT NOT NULL,
+   suite TEXT NOT NULL,
+   event TEXT NOT NULL,
+   priority TEXT,
+   component TEXT,
+   section TEXT
+)""")
+
+        c.execute("GRANT INSERT ON audit.package_changes TO dak")
+        c.execute("GRANT SELECT ON audit.package_changes TO PUBLIC")
+
+        c.execute("""CREATE OR REPLACE FUNCTION trigger_binsrc_assoc_update() RETURNS TRIGGER AS $$
+DECLARE
+  v_data RECORD;
+
+  v_package audit.package_changes.package%TYPE;
+  v_version audit.package_changes.version%TYPE;
+  v_architecture audit.package_changes.architecture%TYPE;
+  v_suite audit.package_changes.suite%TYPE;
+  v_event audit.package_changes.event%TYPE;
+  v_priority audit.package_changes.priority%TYPE;
+  v_component audit.package_changes.component%TYPE;
+  v_section audit.package_changes.section%TYPE;
+BEGIN
+  CASE TG_OP
+    WHEN 'INSERT' THEN v_event := 'I'; v_data := NEW;
+    WHEN 'DELETE' THEN v_event := 'D'; v_data := OLD;
+    ELSE RAISE EXCEPTION 'trigger called for invalid operation (%)', TG_OP;
+  END CASE;
+
+  SELECT suite_name INTO STRICT v_suite FROM suite WHERE id = v_data.suite;
+
+  CASE TG_TABLE_NAME
+    WHEN 'bin_associations' THEN
+      SELECT package, version, arch_string
+        INTO STRICT v_package, v_version, v_architecture
+        FROM binaries LEFT JOIN architecture ON (architecture.id = binaries.architecture)
+        WHERE binaries.id = v_data.bin;
+
+      SELECT component.name, priority.priority, section.section
+        INTO v_component, v_priority, v_section
+        FROM override
+             JOIN override_type ON (override.type = override_type.id)
+             JOIN priority ON (priority.id = override.priority)
+             JOIN section ON (section.id = override.section)
+             JOIN component ON (override.component = component.id)
+             JOIN suite ON (suite.id = override.suite)
+        WHERE override_type.type != 'dsc'
+              AND override.package = v_package AND suite.id = v_data.suite;
+
+    WHEN 'src_associations' THEN
+      SELECT source, version
+        INTO STRICT v_package, v_version
+        FROM source WHERE source.id = v_data.source;
+      v_architecture := 'source';
+
+      SELECT component.name, priority.priority, section.section
+        INTO v_component, v_priority, v_section
+        FROM override
+             JOIN override_type ON (override.type = override_type.id)
+             JOIN priority ON (priority.id = override.priority)
+             JOIN section ON (section.id = override.section)
+             JOIN component ON (override.component = component.id)
+             JOIN suite ON (suite.id = override.suite)
+        WHERE override_type.type = 'dsc'
+              AND override.package = v_package AND suite.id = v_data.suite;
+
+    ELSE RAISE EXCEPTION 'trigger called for invalid table (%)', TG_TABLE_NAME;
+  END CASE;
+
+  INSERT INTO audit.package_changes
+    (package, version, architecture, suite, event, priority, component, section)
+    VALUES (v_package, v_version, v_architecture, v_suite, v_event, v_priority, v_component, v_section);
+
+  RETURN NEW;
+END;
+$$ LANGUAGE plpgsql VOLATILE SECURITY DEFINER
+SET search_path = public, pg_temp""");
+
+        c.execute("""CREATE OR REPLACE FUNCTION trigger_override_update() RETURNS TRIGGER AS $$
+DECLARE
+  v_src_override_id override_type.id%TYPE;
+
+  v_priority audit.package_changes.priority%TYPE := NULL;
+  v_component audit.package_changes.component%TYPE := NULL;
+  v_section audit.package_changes.section%TYPE := NULL;
+BEGIN
+
+  IF TG_TABLE_NAME != 'override' THEN
+    RAISE EXCEPTION 'trigger called for invalid table (%)', TG_TABLE_NAME;
+  END IF;
+  IF TG_OP != 'UPDATE' THEN
+    RAISE EXCEPTION 'trigger called for invalid event (%)', TG_OP;
+  END IF;
+
+  IF OLD.package != NEW.package OR OLD.type != NEW.type OR OLD.suite != NEW.suite THEN
+    RETURN NEW;
+  END IF;
+
+  IF OLD.priority != NEW.priority THEN
+    SELECT priority INTO STRICT v_priority FROM priority WHERE id = NEW.priority;
+  END IF;
+
+  IF OLD.component != NEW.component THEN
+    SELECT name INTO STRICT v_component FROM component WHERE id = NEW.component;
+  END IF;
+
+  IF OLD.section != NEW.section THEN
+    SELECT section INTO STRICT v_section FROM section WHERE id = NEW.section;
+  END IF;
+
+  -- Find out if we're doing src or binary overrides
+  SELECT id INTO STRICT v_src_override_id FROM override_type WHERE type = 'dsc';
+  IF OLD.type = v_src_override_id THEN
+    -- Doing a src_association link
+    INSERT INTO audit.package_changes
+      (package, version, architecture, suite, event, priority, component, section)
+      SELECT NEW.package, source.version, 'source', suite.suite_name, 'U', v_priority, v_component, v_section
+        FROM source
+          JOIN src_associations ON (source.id = src_associations.source)
+          JOIN suite ON (suite.id = src_associations.suite)
+        WHERE source.source = NEW.package AND src_associations.suite = NEW.suite;
+  ELSE
+    -- Doing a bin_association link
+    INSERT INTO audit.package_changes
+      (package, version, architecture, suite, event, priority, component, section)
+      SELECT NEW.package, binaries.version, architecture.arch_string, suite.suite_name, 'U', v_priority, v_component, v_section
+        FROM binaries
+          JOIN bin_associations ON (binaries.id = bin_associations.bin)
+          JOIN architecture ON (architecture.id = binaries.architecture)
+          JOIN suite ON (suite.id = bin_associations.suite)
+        WHERE binaries.package = NEW.package AND bin_associations.suite = NEW.suite;
+  END IF;
+
+  RETURN NEW;
+END;
+$$ LANGUAGE plpgsql VOLATILE SECURITY DEFINER
+SET search_path = public, pg_temp""");
+
+        c.execute("CREATE TRIGGER trigger_bin_associations_audit AFTER INSERT OR DELETE ON bin_associations FOR EACH ROW EXECUTE PROCEDURE trigger_binsrc_assoc_update()")
+        c.execute("CREATE TRIGGER trigger_src_associations_audit AFTER INSERT OR DELETE ON src_associations FOR EACH ROW EXECUTE PROCEDURE trigger_binsrc_assoc_update()")
+        c.execute("CREATE TRIGGER trigger_override_audit AFTER UPDATE ON override FOR EACH ROW EXECUTE PROCEDURE trigger_override_update()")
+
+        c.execute("UPDATE config SET value = '67' WHERE name = 'db_revision'")
+        self.db.commit()
+
+    except psycopg2.ProgrammingError, msg:
+        self.db.rollback()
+        raise DBUpdateError('Unable to apply sick update 67, rollback issued. Error message : %s' % (str(msg)))
diff --git a/dak/dakdb/update68.py b/dak/dakdb/update68.py
new file mode 100755 (executable)
index 0000000..ec5b43d
--- /dev/null
@@ -0,0 +1,52 @@
+#!/usr/bin/env python
+# coding=utf8
+
+"""
+Drop unused plperl routine and language and plpythonu language
+
+@contact: Debian FTP Master <ftpmaster@debian.org>
+@copyright: 2011 Mark Hymers <mhy@debian.org>
+@license: GNU General Public License version 2 or later
+"""
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+################################################################################
+
+import psycopg2
+from daklib.dak_exceptions import DBUpdateError
+from daklib.config import Config
+
+################################################################################
+def do_update(self):
+    """
+    Drop unused plperl routine and language and plpythonu language
+    """
+    print __doc__
+    try:
+        cnf = Config()
+
+        c = self.db.cursor()
+
+        c.execute("DROP FUNCTION debversion_compare_single(text,text)")
+        c.execute("DROP LANGUAGE plperl");
+        c.execute("DROP LANGUAGE plpythonu");
+
+        c.execute("UPDATE config SET value = '68' WHERE name = 'db_revision'")
+        self.db.commit()
+
+    except psycopg2.ProgrammingError as msg:
+        self.db.rollback()
+        raise DBUpdateError('Unable to apply sick update 68, rollback issued. Error message : %s' % (str(msg)))
index 6f91eb378d2dc1dd6c06fdcab87757508131a05c..9c3dd1ed6662f4faa8eb2ea5cb5f9515297f0c18 100755 (executable)
@@ -116,6 +116,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '7' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to appy suite config updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to appy suite config updates, rollback issued. Error message : %s" % (str(msg)))
index 2f92c4d833d7008d1495e01ae43110d6b46ce999..98e0f088048e06c2981c80ac7ad8d33f57844b7e 100755 (executable)
@@ -99,6 +99,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '8' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply suite config updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply suite config updates, rollback issued. Error message : %s" % (str(msg)))
index 2ca3c51eee6f42f4dfcbb820174c615c7a8adbc0..bbdd212206653ab7b525d19282187c64c9604fee 100755 (executable)
@@ -57,6 +57,6 @@ def do_update(self):
         c.execute("UPDATE config SET value = '9' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
-        raise DBUpdateError, "Unable to apply suite config updates, rollback issued. Error message : %s" % (str(msg))
+        raise DBUpdateError("Unable to apply suite config updates, rollback issued. Error message : %s" % (str(msg)))
index 8e2ce20b987135538e4a0d76cab2be7a8df72665..edb9384b6c5be92b0e20ff23544ba1a031922ef4 100755 (executable)
@@ -507,7 +507,7 @@ def get_readme_source (dsc_filename):
 
     try:
         shutil.rmtree(tempdir)
-    except OSError, e:
+    except OSError as e:
         if errno.errorcode[e.errno] != 'EACCES':
             res += "%s: couldn't remove tmp dir %s for source tree." % (dsc_filename, tempdir)
 
@@ -634,7 +634,7 @@ def main ():
                     # Reset stdout here so future less invocations aren't FUBAR
                     less_fd.close()
                     sys.stdout = stdout_fd
-        except IOError, e:
+        except IOError as e:
             if errno.errorcode[e.errno] == 'EPIPE':
                 utils.warn("[examine-package] Caught EPIPE; skipping.")
                 pass
index 83d51824cdcb05efe37d8143b88eead762c58f3a..3297c42cfebf23729b524df67f75f0965c7e280b 100755 (executable)
@@ -81,7 +81,7 @@ def smartlink(f, t):
         os.system("bzip2 -d < %s.bz2 > %s" % (f, t))
     else:
         print "missing: %s" % (f)
-        raise IOError, f
+        raise IOError(f)
 
 def smartopen(file):
     if os.path.isfile(file):
@@ -280,7 +280,7 @@ def genchanges(Options, outdir, oldfile, origfile, maxdiffs = 14):
 def main():
     global Cnf, Options, Logger
 
-    os.umask(0002)
+    os.umask(0o002)
 
     Cnf = utils.get_conf()
     Arguments = [ ('h', "help", "Generate-Index-Diffs::Options::Help"),
index aa28aa6efd98633818f1b5cab683d4e42c3af645..8d94b6b2c512a40b5760a279e04fc81b450677c8 100755 (executable)
@@ -105,7 +105,7 @@ GPRINT:avgd%i:avg\\: %%.0lf\\j
     rrd_args += extra_args
     try:
         ret = rrdtool.graph(*rrd_args)
-    except rrdtool.error, e:
+    except rrdtool.error as e:
         print('warning: graph: rrdtool error, skipping %s-%s.png: %s' % (name, graph, e))
 
 def graph_normal(rrd_dir, image_dir, name, extra_args, graph, title, start, year_lines=False):
@@ -157,7 +157,7 @@ GPRINT:avgds0:avg\\: %%.0lf\\j
     rrd_args += extra_args
     try:
         ret = rrdtool.graph(*rrd_args)
-    except rrdtool.error, e:
+    except rrdtool.error as e:
         print('warning: graph: rrdtool error, skipping %s-%s.png: %s' % (name, graph, e))
 
 ################################################################################
index 125dbb8c576e9b531af95ede45bcb12157ce58f9..7b182d6f199123908f02b5406ea9ae580ea14c3c 100755 (executable)
@@ -269,7 +269,7 @@ class ImportThread(threading.Thread):
                 changes.add_known_changes(to_import.dirpath, session=self.session)
                 self.session.commit()
 
-            except InvalidDscError, line:
+            except InvalidDscError as line:
                 warn("syntax error in .dsc file '%s', line %s." % (f, line))
 
             except ChangesUnicodeError:
index b959e37fa64e9f4b2020d7d6afe2226193b844ec..a9dacd349a99966f19af0d88faaccc1169abca50 100755 (executable)
@@ -118,7 +118,7 @@ def main ():
                     try:
                         q = session.execute('CREATE USER "%s"' % (uname))
                         session.commit()
-                    except Exception, e:
+                    except Exception as e:
                         utils.warn("Could not create user %s (%s)" % (uname, str(e)))
                         session.rollback()
                 else:
index a4703bb88b5170ef8597ea18d3eb675bacf23a0a..fc5efd3206948cdca6ece9c2b03b7fe394633429 100755 (executable)
@@ -90,15 +90,15 @@ def process_keyring(fullpath, secret=False):
         os.makedirs(keydir)
         if secret:
             # Make sure secret keyring directories are 0700
-            os.chmod(keydir, 0700)
+            os.chmod(keydir, 0o700)
 
     # Touch the file
     print "Creating %s ..." % (fullpath)
     file(fullpath, 'w')
     if secret:
-        os.chmod(fullpath, 0600)
+        os.chmod(fullpath, 0o600)
     else:
-        os.chmod(fullpath, 0644)
+        os.chmod(fullpath, 0o644)
 
 ######################################################################
 
index ac5581d02be8ae43a3de98d4145a1ef1a49cb7f3..ad6dbab1a80173857072918b0da7fd03fe6366a5 100755 (executable)
@@ -225,7 +225,7 @@ def export_files(session, pool, clpool):
                         os.link(version, suite)
                         stats['created'] += 1
             unpacked.cleanup()
-        except Exception, e:
+        except Exception as e:
             print 'make-changelog: unable to unpack %s\n%s' % (p, e)
             stats['errors'] += 1
 
index 1a25369789518406cfdd0fd293b4e73c74e03e02..1c2231a305709baf6ff7379fd55fbbe9868ce1d0 100755 (executable)
@@ -42,8 +42,6 @@
 
 ################################################################################
 
-from __future__ import with_statement
-
 import copy
 import errno
 import os
@@ -351,7 +349,7 @@ def check_pkg (upload):
                 elif ftype == "dsc":
                     print examine_package.check_dsc(changes['distribution'], f)
         print examine_package.output_package_relations()
-    except IOError, e:
+    except IOError as e:
         if e.errno == errno.EPIPE:
             utils.warn("[examine_package] Caught EPIPE; skipping.")
         else:
@@ -616,7 +614,7 @@ def check_daily_lock():
 
         os.open(lockfile,
                 os.O_RDONLY | os.O_CREAT | os.O_EXCL)
-    except OSError, e:
+    except OSError as e:
         if e.errno == errno.EEXIST or e.errno == errno.EACCES:
             raise CantGetLockError
 
@@ -638,10 +636,10 @@ def lock_package(package):
 
     try:
         fd = os.open(path, os.O_CREAT | os.O_EXCL | os.O_RDONLY)
-    except OSError, e:
+    except OSError as e:
         if e.errno == errno.EEXIST or e.errno == errno.EACCES:
             user = pwd.getpwuid(os.stat(path)[stat.ST_UID])[4].split(',')[0].replace('.', '')
-            raise AlreadyLockedError, user
+            raise AlreadyLockedError(user)
 
     try:
         yield fd
@@ -720,7 +718,7 @@ def do_pkg(changes_full_path, session):
                         print "Hello? Operator! Give me the number for 911!"
                         print "Dinstall in the locked area, cant process packages, come back later"
 
-    except AlreadyLockedError, e:
+    except AlreadyLockedError as e:
         print "Seems to be locked by %s already, skipping..." % (e)
 
 def show_new_comments(changes_files, session):
@@ -791,7 +789,7 @@ def main():
     if not Options["No-Action"]:
         try:
             Logger = daklog.Logger("process-new")
-        except CantOpenError, e:
+        except CantOpenError as e:
             Options["Trainee"] = "True"
 
     Sections = Section_Completer(session)
index 94e274687bcd0902f652c91db8756c298f94587d..3f237f626b506b5cb929c4fc4ede505530cc748f 100755 (executable)
@@ -142,7 +142,7 @@ def main():
     if not Options["No-Action"]:
         try:
             Logger = daklog.Logger("process-policy")
-        except CantOpenError, e:
+        except CantOpenError as e:
             Logger = None
 
     # Find policy queue
index bf74baa65be064e356abaa8459b39a6688c85ad9..4d9f3b00b768071363bd9ac74c72cefe19de7e74 100755 (executable)
@@ -229,7 +229,7 @@ def action(u, session):
 
     try:
         chg = session.query(DBChange).filter_by(changesname=os.path.basename(u.pkg.changes_file)).one()
-    except NoResultFound, e:
+    except NoResultFound as e:
         chg = None
 
     if len(u.rejects) > 0:
@@ -458,7 +458,7 @@ def main():
         lock_fd = os.open(os.path.join(cnf["Dir::Lock"], 'dinstall.lock'), os.O_RDWR | os.O_CREAT)
         try:
             fcntl.lockf(lock_fd, fcntl.LOCK_EX | fcntl.LOCK_NB)
-        except IOError, e:
+        except IOError as e:
             if errno.errorcode[e.errno] == 'EACCES' or errno.errorcode[e.errno] == 'EAGAIN':
                 utils.fubar("Couldn't obtain lock; assuming another 'dak process-upload' is already running.")
             else:
index ec7b3a7d2fe55abbf089dcf65f0910f97ef3e1d5..5fd9288a8c6da8711b48e1eff274f213e169c955 100755 (executable)
@@ -312,7 +312,7 @@ def table_row(source, version, arch, last_mod, maint, distribution, closes, fing
         try:
             (login, domain) = sponsor.split("@", 1)
             print "<span class=\"sponsor\">Sponsor: <a href=\"http://qa.debian.org/developer.php?login=%s\">%s</a></span>@debian.org<br/>" % (utils.html_escape(login), utils.html_escape(login))
-        except Exception, e:
+        except Exception as e:
             pass
 
     print "<span class=\"signature\">Fingerprint: %s</span>" % (fingerprint)
@@ -355,7 +355,7 @@ RRA:MAX:0.5:288:795
         try:
             rc = rrdtool.create(*create)
             ru = rrdtool.update(*update)
-        except rrdtool.error, e:
+        except rrdtool.error as e:
             print('warning: queue_report: rrdtool error, skipping %s.rrd: %s' % (type, e))
     except NameError:
         pass
@@ -372,7 +372,7 @@ def process_changes_files(changes_files, type, log, rrd_dir):
             u.load_changes(filename)
             cache[filename] = copy(u.pkg.changes)
             cache[filename]["filename"] = filename
-        except Exception, e:
+        except Exception as e:
             print "WARNING: Exception %s" % e
             continue
     # Divide the .changes into per-source groups
@@ -438,7 +438,7 @@ def process_changes_files(changes_files, type, log, rrd_dir):
                 session = DBConn().session()
                 dbc = session.query(DBChange).filter_by(changesname=changesbase).one()
                 session.close()
-            except Exception, e:
+            except Exception as e:
                 print "Can't find changes file in NEW for %s (%s)" % (changesbase, e)
                 dbc = None
 
@@ -447,7 +447,7 @@ def process_changes_files(changes_files, type, log, rrd_dir):
                     (maintainer["maintainer822"], maintainer["maintainer2047"],
                     maintainer["maintainername"], maintainer["maintaineremail"]) = \
                     fix_maintainer (j["maintainer"])
-                except ParseMaintError, msg:
+                except ParseMaintError as msg:
                     print "Problems while parsing maintainer address\n"
                     maintainer["maintainername"] = "Unknown"
                     maintainer["maintaineremail"] = "Unknown"
@@ -457,7 +457,7 @@ def process_changes_files(changes_files, type, log, rrd_dir):
                     (changeby["changedby822"], changeby["changedby2047"],
                      changeby["changedbyname"], changeby["changedbyemail"]) = \
                      fix_maintainer (j["changed-by"])
-                except ParseMaintError, msg:
+                except ParseMaintError as msg:
                     (changeby["changedby822"], changeby["changedby2047"],
                      changeby["changedbyname"], changeby["changedbyemail"]) = \
                      ("", "", "", "")
index 0a07ce6fbf96a9b43ea81f0d19f066d42150d2f1..03d12f0f8108012b459d835b4dd0c63e0523b031 100755 (executable)
--- a/dak/rm.py
+++ b/dak/rm.py
@@ -51,7 +51,7 @@ from daklib.config import Config
 from daklib.dbconn import *
 from daklib import utils
 from daklib.dak_exceptions import *
-from daklib.regexes import re_strip_source_version, re_build_dep_arch
+from daklib.regexes import re_strip_source_version, re_build_dep_arch, re_bin_only_nmu
 import debianbts as bts
 
 ################################################################################
@@ -117,32 +117,24 @@ def reverse_depends_check(removals, suite, arches=None, session=None):
         'suite_id':     dbsuite.suite_id,
         'metakey_d_id': metakey_d.key_id,
         'metakey_p_id': metakey_p.key_id,
-        'arch_all_id' : get_architecture('all', session).arch_id,
     }
-    for architecture in all_arches:
+    for architecture in all_arches | set(['all']):
         deps = {}
         sources = {}
         virtual_packages = {}
         params['arch_id'] = get_architecture(architecture, session).arch_id
 
         statement = '''
-            WITH suite_binaries AS
-                (select b.id, b.package, b.source, b.file
-                    from binaries b WHERE b.id in
-                        (SELECT bin FROM bin_associations WHERE suite = :suite_id)
-                        AND b.architecture in (:arch_id, :arch_all_id))
             SELECT b.id, b.package, s.source, c.name as component,
-                bmd.value as depends, bmp.value as provides
-                FROM suite_binaries b
-                LEFT OUTER JOIN binaries_metadata bmd
-                    ON b.id = bmd.bin_id AND bmd.key_id = :metakey_d_id
-                LEFT OUTER JOIN binaries_metadata bmp
-                    ON b.id = bmp.bin_id AND bmp.key_id = :metakey_p_id
+                (SELECT bmd.value FROM binaries_metadata bmd WHERE bmd.bin_id = b.id AND bmd.key_id = :metakey_d_id) AS depends,
+                (SELECT bmp.value FROM binaries_metadata bmp WHERE bmp.bin_id = b.id AND bmp.key_id = :metakey_p_id) AS provides
+                FROM binaries b
+                JOIN bin_associations ba ON b.id = ba.bin AND ba.suite = :suite_id
                 JOIN source s ON b.source = s.id
                 JOIN files f ON b.file = f.id
                 JOIN location l ON f.location = l.id
-                JOIN component c ON l.component = c.id'''
-        session.rollback()
+                JOIN component c ON l.component = c.id
+                WHERE b.architecture = :arch_id'''
         query = session.query('id', 'package', 'source', 'component', 'depends', 'provides'). \
             from_statement(statement).params(params)
         for binary_id, package, source, component, depends, provides in query:
@@ -177,7 +169,7 @@ def reverse_depends_check(removals, suite, arches=None, session=None):
             parsed_dep = []
             try:
                 parsed_dep += apt_pkg.ParseDepends(deps[package])
-            except ValueError, e:
+            except ValueError as e:
                 print "Error for package %s: %s" % (package, e)
             for dep in parsed_dep:
                 # Check for partial breakage.  If a package has a ORed
@@ -200,7 +192,7 @@ def reverse_depends_check(removals, suite, arches=None, session=None):
         for source, bindict in sorted(all_broken.items()):
             lines = []
             for binary, arches in sorted(bindict.items()):
-                if arches == all_arches:
+                if arches == all_arches or 'all' in arches:
                     lines.append(binary)
                 else:
                     lines.append('%s [%s]' % (binary, ' '.join(sorted(arches))))
@@ -236,7 +228,7 @@ def reverse_depends_check(removals, suite, arches=None, session=None):
             build_dep = re_build_dep_arch.sub("", build_dep)
             try:
                 parsed_dep += apt_pkg.ParseDepends(build_dep)
-            except ValueError, e:
+            except ValueError as e:
                 print "Error for source %s: %s" % (source, e)
         for dep in parsed_dep:
             unsat = 0
@@ -666,6 +658,7 @@ def main ():
         Subst_close_other = Subst_common
         bcc = []
         wnpp = utils.parse_wnpp_bug_file()
+        versions = list(set([re_bin_only_nmu.sub('', v) for v in versions]))
         if len(versions) == 1:
             Subst_close_other["__VERSION__"] = versions[0]
         else:
index 4dd603e4bc53f7c8ccfaf750ed0c13f843d84912..7352f71ea928d6bec94ee0b9654d339b174fa3f1 100755 (executable)
@@ -173,7 +173,7 @@ RRA:MAX:0.5:288:795
         try:
             rc = rrdtool.create(*create)
             ru = rrdtool.update(*update)
-        except rrdtool.error, e:
+        except rrdtool.error as e:
             print('warning: queue_report: rrdtool error, skipping %s.rrd: %s' % (type, e))
     except NameError:
         pass
@@ -214,7 +214,7 @@ def get_upload_data(changesfn):
                     os.unlink(lfn)
                 if os.path.exists(qfn):
                     os.symlink(qfn,lfn)
-                    os.chmod(qfn, 0644)
+                    os.chmod(qfn, 0o644)
     return (max(delaydays-1,0)*24*60*60+remainingtime, changesname, delay, uploader, achanges.get('closes','').split(),achanges, delaydays)
 
 def list_uploads(filelist, rrd_dir):
index e2461ad2ef56b82ee0cb19bc7fdb7e14f106dcce..a5eb6b6cd1e5338861b27cfb61e15a7644ca9d2d 100755 (executable)
@@ -135,7 +135,7 @@ def load_transitions(trans_file):
     failure = False
     try:
         trans = yaml.load(sourcecontent)
-    except yaml.YAMLError, exc:
+    except yaml.YAMLError as exc:
         # Someone fucked it up
         print "ERROR: %s" % (exc)
         return None
@@ -225,7 +225,7 @@ def lock_file(f):
         try:
             fcntl.lockf(lock_fd, fcntl.LOCK_EX | fcntl.LOCK_NB)
             return lock_fd
-        except OSError, e:
+        except OSError as e:
             if errno.errorcode[e.errno] == 'EACCES' or errno.errorcode[e.errno] == 'EEXIST':
                 print "Unable to get lock for %s (try %d of 10)" % \
                         (file, retry+1)
@@ -297,7 +297,7 @@ def write_transitions_from_file(from_file):
     else:
         trans = load_transitions(from_file)
         if trans is None:
-            raise TransitionsError, "Unparsable transitions file %s" % (file)
+            raise TransitionsError("Unparsable transitions file %s" % (file))
         write_transitions(trans)
 
 ################################################################################
@@ -319,7 +319,7 @@ def temp_transitions_file(transitions):
     """
 
     (fd, path) = tempfile.mkstemp("", "transitions", Cnf["Dir::TempPath"])
-    os.chmod(path, 0644)
+    os.chmod(path, 0o644)
     f = open(path, "w")
     yaml.dump(transitions, f, default_flow_style=False)
     return path
@@ -589,7 +589,7 @@ def main():
     if Options["import"]:
         try:
             write_transitions_from_file(Options["import"])
-        except TransitionsError, m:
+        except TransitionsError as m:
             print m
             sys.exit(2)
         sys.exit(0)
index 0f1e7a379f8423a3d33ad3416f2c253dcdd11b6a..e3dd06251cb65eedc7499fa9cdae227451428e62 100755 (executable)
@@ -46,7 +46,7 @@ from daklib.daklog import Logger
 ################################################################################
 
 Cnf = None
-required_database_schema = 66
+required_database_schema = 68
 
 ################################################################################
 
@@ -134,7 +134,7 @@ Updates dak's database schema to the lastest version. You should disable crontab
 
             self.db = psycopg2.connect(connect_str)
 
-        except Exception, e:
+        except Exception as e:
             print "FATAL: Failed connect to database (%s)" % str(e)
             sys.exit(1)
 
@@ -171,7 +171,7 @@ Updates dak's database schema to the lastest version. You should disable crontab
                 message = "updated database schema from %d to %d" % (database_revision, i+1)
                 print message
                 logger.log([message])
-            except DBUpdateError, e:
+            except DBUpdateError as e:
                 # Seems the update did not work.
                 print "Was unable to update database schema from %d to %d." % (database_revision, i+1)
                 print "The error message received was %s" % (e)
@@ -205,7 +205,7 @@ Updates dak's database schema to the lastest version. You should disable crontab
                 fcntl.lockf(lock_fd, fcntl.LOCK_EX | fcntl.LOCK_NB)
             else:
                 utils.warn("Lock directory doesn't exist yet - not locking")
-        except IOError, e:
+        except IOError as e:
             if errno.errorcode[e.errno] == 'EACCES' or errno.errorcode[e.errno] == 'EAGAIN':
                 utils.fubar("Couldn't obtain lock; assuming another 'dak process-unchecked' is already running.")
 
index bebab6dd1c9c2a252a62592cda1c97e84738a0e2..6db19a711255cfb250a40927b9c28560cb471428 100755 (executable)
@@ -494,6 +494,6 @@ def source_scan_helper(source_id):
     try:
         scanner = SourceContentsScanner(source_id)
         scanner.scan()
-    except Exception, e:
+    except Exception as e:
         print e
 
index 7ececa560ebc74f5405dfc8f73a571b77691a9ca..05ca9b1adaab9770ae6048956b1df1fda00a5e13 100644 (file)
@@ -55,7 +55,7 @@ class Logger(object):
         logdir = Config()["Dir::Log"]
         if not os.path.exists(logdir):
             umask = os.umask(00000)
-            os.makedirs(logdir, 02775)
+            os.makedirs(logdir, 0o2775)
             os.umask(umask)
 
         # Open the logfile
@@ -65,7 +65,7 @@ class Logger(object):
         if debug:
             logfile = sys.stderr
         else:
-            umask = os.umask(00002)
+            umask = os.umask(0o0002)
             logfile = utils.open_file(logfilename, 'a')
             os.umask(umask)
 
index 86fa74d5208a860a718edfa479568fcd0269608a..b709ecf558850f6f4ec2cf405e9e10b6a0c130cd 100644 (file)
@@ -66,9 +66,9 @@ def _func_wrapper(func, *args, **kwds):
     #  messages is a string used for logging
     try:
         return (func(*args, **kwds))
-    except SignalException, e:
+    except SignalException as e:
         return (PROC_STATUS_SIGNALRAISED, e.signum)
-    except Exception, e:
+    except Exception as e:
         return (PROC_STATUS_EXCEPTION, str(e))
     finally:
         # Make sure connections are closed. We might die otherwise.
index 637301871a6bf4495036d8a004d7d3d8086f7fa2..4a45ae2ef3c114ea970ebc73de659cd7ddfe1430 100755 (executable)
@@ -818,7 +818,7 @@ class BuildQueue(object):
                     Logger.log(["I: Removing %s from the queue" % o.fullpath])
                     os.unlink(o.fullpath)
                     killdb = True
-            except OSError, e:
+            except OSError as e:
                 # If it wasn't there, don't worry
                 if e.errno == ENOENT:
                     killdb = True
@@ -1686,7 +1686,7 @@ class Keyring(object):
         key = None
         signingkey = False
 
-        for line in k.xreadlines():
+        for line in k:
             field = line.split(":")
             if field[0] == "pub":
                 key = field[4]
@@ -2823,10 +2823,25 @@ def add_deb_to_db(u, filename, session=None):
 
     # Find source id
     bin_sources = get_sources_from_name(entry["source package"], entry["source version"], session=session)
+
+    # If we couldn't find anything and the upload contains Arch: source,
+    # fall back to trying the source package, source version uploaded
+    # This maintains backwards compatibility with previous dak behaviour
+    # and deals with slightly broken binary debs which don't properly
+    # declare their source package name
+    if len(bin_sources) == 0:
+        if u.pkg.changes["architecture"].has_key("source") \
+           and u.pkg.dsc.has_key("source") and u.pkg.dsc.has_key("version"):
+            bin_sources = get_sources_from_name(u.pkg.dsc["source"], u.pkg.dsc["version"], session=session)
+
+    # If we couldn't find a source here, we reject
+    # TODO: Fix this so that it doesn't kill process-upload and instead just
+    #       performs a reject.  To be honest, we should probably spot this
+    #       *much* earlier than here
     if len(bin_sources) != 1:
-        raise NoSourceFieldError"Unable to find a unique source id for %s (%s), %s, file %s, type %s, signed by %s" % \
+        raise NoSourceFieldError("Unable to find a unique source id for %s (%s), %s, file %s, type %s, signed by %s" % \
                                   (bin.package, bin.version, entry["architecture"],
-                                   filename, bin.binarytype, u.pkg.changes["fingerprint"])
+                                   filename, bin.binarytype, u.pkg.changes["fingerprint"]))
 
     bin.source_id = bin_sources[0].source_id
 
@@ -2834,9 +2849,9 @@ def add_deb_to_db(u, filename, session=None):
         for srcname, version in entry["built-using"]:
             exsources = get_sources_from_name(srcname, version, session=session)
             if len(exsources) != 1:
-                raise NoSourceFieldError"Unable to find source package (%s = %s) in Built-Using for %s (%s), %s, file %s, type %s, signed by %s" % \
+                raise NoSourceFieldError("Unable to find source package (%s = %s) in Built-Using for %s (%s), %s, file %s, type %s, signed by %s" % \
                                           (srcname, version, bin.package, bin.version, entry["architecture"],
-                                           filename, bin.binarytype, u.pkg.changes["fingerprint"])
+                                           filename, bin.binarytype, u.pkg.changes["fingerprint"]))
 
             bin.extra_sources.append(exsources[0])
 
@@ -3684,7 +3699,7 @@ class DBConn(object):
             self.__setuptables()
             self.__setupmappers()
 
-        except OperationalError, e:
+        except OperationalError as e:
             import utils
             utils.fubar("Cannot connect to database (%s)" % str(e))
 
index b44fc2a5775c0fac1e21cb56af3585c6691a31ab..274ef5c12dadc8b6ab6a921c9680770f1628b48c 100755 (executable)
@@ -65,7 +65,7 @@ class BaseFileWriter(object):
     # internal helper function
     def rename(self, filename):
         tempfilename = filename + '.new'
-        os.chmod(tempfilename, 0664)
+        os.chmod(tempfilename, 0o664)
         os.rename(tempfilename, filename)
 
     def close(self):
index edc80533832719cc531209f7194003f70c58ac01..bcd42f61b01aec959d8be734173d2627a9dffbae 100755 (executable)
@@ -58,7 +58,7 @@ def parse_format(txt):
     format = re_verwithext.search(txt)
 
     if format is None:
-        raise UnknownFormatError, txt
+        raise UnknownFormatError(txt)
 
     format = format.groups()
 
@@ -80,7 +80,7 @@ def validate_changes_format(format, field):
     """
 
     if (format < (1, 5) or format > (1, 8)):
-        raise UnknownFormatError, repr(format)
+        raise UnknownFormatError(repr(format))
 
     if field != 'files' and format < (1, 8):
-        raise UnknownFormatError, repr(format)
+        raise UnknownFormatError(repr(format))
index 2f36a696313badb4aad725685f1c1362df6c2765..6c9ce570a863319bde2e3bef679ddcbe264f94eb 100644 (file)
@@ -58,9 +58,9 @@ class Holding(object):
 
         dest = os.path.join(self.holding_dir, base_filename)
         try:
-            fd = os.open(dest, os.O_RDWR | os.O_CREAT | os.O_EXCL, 0640)
+            fd = os.open(dest, os.O_RDWR | os.O_CREAT | os.O_EXCL, 0o640)
             os.close(fd)
-        except OSError, e:
+        except OSError as e:
             # Shouldn't happen, but will if, for example, someone lists a
             # file twice in the .changes.
             if e.errno == EEXIST:
@@ -68,7 +68,7 @@ class Holding(object):
 
         try:
             shutil.copy(filename, dest)
-        except IOError, e:
+        except IOError as e:
             # In either case (ENOENT or EACCES) we want to remove the
             # O_CREAT | O_EXCLed ghost file, so add the file to the list
             # of 'in holding' even if it's not the real file.
index d88cf4faf2a1ad0cd88675a182858c76c836cf12..793b073c927b530fe5c9fcef42801456b569995d 100755 (executable)
@@ -66,7 +66,7 @@ class MetadataScanner(object):
             if self.verbose:
                 print "Imported %s (%s)" % (self.pkid, fullpath)
             session.commit()
-        except Exception, e:
+        except Exception as e:
             print "Failed to import %s [id=%s; fullpath=%s]" % (self.dbclass.__name__, self.pkid, fullpath)
             print "Exception: ", e
             session.rollback()
index 82f3d9b9d9e971dea3783aa782f6f8fd843171db..f6593394645c2c385fbf5ead34830b2bc83c5422 100755 (executable)
@@ -557,7 +557,7 @@ class Upload(object):
         except CantOpenError:
             self.rejects.append("%s: can't read file." % (filename))
             return False
-        except ParseChangesError, line:
+        except ParseChangesError as line:
             self.rejects.append("%s: parse error, can't grok: %s." % (filename, line))
             return False
         except ChangesUnicodeError:
@@ -567,10 +567,10 @@ class Upload(object):
         # Parse the Files field from the .changes into another dictionary
         try:
             self.pkg.files.update(utils.build_file_list(self.pkg.changes))
-        except ParseChangesError, line:
+        except ParseChangesError as line:
             self.rejects.append("%s: parse error, can't grok: %s." % (filename, line))
             return False
-        except UnknownFormatError, format:
+        except UnknownFormatError as format:
             self.rejects.append("%s: unknown format '%s'." % (filename, format))
             return False
 
@@ -608,7 +608,7 @@ class Upload(object):
              self.pkg.changes["maintainername"],
              self.pkg.changes["maintaineremail"]) = \
                    fix_maintainer (self.pkg.changes["maintainer"])
-        except ParseMaintError, msg:
+        except ParseMaintError as msg:
             self.rejects.append("%s: Maintainer field ('%s') failed to parse: %s" \
                    % (filename, self.pkg.changes["maintainer"], msg))
 
@@ -619,7 +619,7 @@ class Upload(object):
              self.pkg.changes["changedbyname"],
              self.pkg.changes["changedbyemail"]) = \
                    fix_maintainer (self.pkg.changes.get("changed-by", ""))
-        except ParseMaintError, msg:
+        except ParseMaintError as msg:
             self.pkg.changes["changedby822"] = ""
             self.pkg.changes["changedby2047"] = ""
             self.pkg.changes["changedbyname"] = ""
@@ -714,7 +714,7 @@ class Upload(object):
         try:
             control = apt_pkg.ParseSection(apt_inst.debExtractControl(deb_file))
         except:
-            self.rejects.append("%s: debExtractControl() raised %s." % (f, sys.exc_type))
+            self.rejects.append("%s: debExtractControl() raised %s." % (f, sys.exc_info()[0]))
             deb_file.close()
             # Can't continue, none of the checks on control would work.
             return
@@ -800,7 +800,7 @@ class Upload(object):
                         else:
                             entry["built-using"].append( (bu_so[0].source, bu_so[0].version, ) )
 
-            except ValueError, e:
+            except ValueError as e:
                 self.rejects.append("%s: Cannot parse Built-Using field: %s" % (f, str(e)))
 
 
@@ -1046,7 +1046,7 @@ class Upload(object):
                    or (dbc.in_queue is not None
                        and dbc.in_queue.queue_name not in ["unchecked", "newstage"]):
                 self.rejects.append("%s file already known to dak" % base_filename)
-        except NoResultFound, e:
+        except NoResultFound as e:
             # not known, good
             pass
 
@@ -1163,9 +1163,9 @@ class Upload(object):
         except CantOpenError:
             if not action:
                 return False, "%s: can't read file." % (dsc_filename)
-        except ParseChangesError, line:
+        except ParseChangesError as line:
             return False, "%s: parse error, can't grok: %s." % (dsc_filename, line)
-        except InvalidDscError, line:
+        except InvalidDscError as line:
             return False, "%s: syntax error on line %s." % (dsc_filename, line)
         except ChangesUnicodeError:
             return False, "%s: dsc file not proper utf-8." % (dsc_filename)
@@ -1199,10 +1199,10 @@ class Upload(object):
         except NoFilesFieldError:
             self.rejects.append("%s: no Files: field." % (dsc_filename))
             return False
-        except UnknownFormatError, format:
+        except UnknownFormatError as format:
             self.rejects.append("%s: unknown format '%s'." % (dsc_filename, format))
             return False
-        except ParseChangesError, line:
+        except ParseChangesError as line:
             self.rejects.append("%s: parse error, can't grok: %s." % (dsc_filename, line))
             return False
 
@@ -1232,7 +1232,7 @@ class Upload(object):
         try:
             # We ignore the return value
             fix_maintainer(self.pkg.dsc["maintainer"])
-        except ParseMaintError, msg:
+        except ParseMaintError as msg:
             self.rejects.append("%s: Maintainer field ('%s') failed to parse: %s" \
                                  % (dsc_filename, self.pkg.dsc["maintainer"], msg))
 
@@ -1325,7 +1325,7 @@ class Upload(object):
         # Extract the source
         try:
             unpacked = UnpackedSource(dsc_filename)
-        except Exception, e:
+        except Exception as e:
             self.rejects.append("'dpkg-source -x' failed for %s. (%s)" % (dsc_filename, str(e)))
             return
 
@@ -1376,7 +1376,7 @@ class Upload(object):
 
         try:
             shutil.rmtree(tmpdir)
-        except OSError, e:
+        except OSError as e:
             if e.errno != errno.EACCES:
                 print "foobar"
                 utils.fubar("%s: couldn't remove tmp dir for source tree." % (self.pkg.dsc["source"]))
@@ -1389,7 +1389,7 @@ class Upload(object):
             if result != 0:
                 utils.fubar("'%s' failed with result %s." % (cmd, result))
             shutil.rmtree(tmpdir)
-        except Exception, e:
+        except Exception as e:
             print "foobar2 (%s)" % e
             utils.fubar("%s: couldn't remove tmp dir for source tree." % (self.pkg.dsc["source"]))
 
@@ -1562,7 +1562,7 @@ class Upload(object):
 
         try:
             lintiantags = yaml.load(sourcecontent)['lintian']
-        except yaml.YAMLError, msg:
+        except yaml.YAMLError as msg:
             utils.fubar("Can not read the lintian tags file %s, YAML error: %s." % (tagfile, msg))
             return
 
@@ -1654,7 +1654,7 @@ class Upload(object):
                         self.rejects.append("%s: has %s file(s) with a time stamp too ancient (e.g. %s [%s])."
                                % (filename, num_ancient_files, ancient_file, time.ctime(ancient_date)))
                 except:
-                    self.rejects.append("%s: deb contents timestamp check failed [%s: %s]" % (filename, sys.exc_type, sys.exc_value))
+                    self.rejects.append("%s: deb contents timestamp check failed [%s: %s]" % (filename, sys.exc_info()[0], sys.exc_info()[1]))
 
     def check_if_upload_is_sponsored(self, uid_email, uid_name):
         uid_email = '@'.join(uid_email.split('@')[:2])
@@ -1868,7 +1868,7 @@ class Upload(object):
         sourcecontent = sourcefile.read()
         try:
             transitions = yaml.load(sourcecontent)
-        except yaml.YAMLError, msg:
+        except yaml.YAMLError as msg:
             # This shouldn't happen, there is a wrapper to edit the file which
             # checks it, but we prefer to be safe than ending up rejecting
             # everything.
@@ -2225,7 +2225,7 @@ distribution."""
                 filename = "%s/%s" % (cnf["Dir::BTSVersionTrack"],
                                       self.pkg.changes_file[:-8]+".versions")
                 os.rename(temp_filename, filename)
-                os.chmod(filename, 0644)
+                os.chmod(filename, 0o644)
 
             # Write out the binary -> source mapping.
             (fd, temp_filename) = utils.temp_filename(cnf["Dir::BTSVersionTrack"], prefix=".")
@@ -2240,7 +2240,7 @@ distribution."""
             filename = "%s/%s" % (cnf["Dir::BTSVersionTrack"],
                                   self.pkg.changes_file[:-8]+".debinfo")
             os.rename(temp_filename, filename)
-            os.chmod(filename, 0644)
+            os.chmod(filename, 0o644)
 
         session.commit()
 
@@ -2342,8 +2342,8 @@ distribution."""
             dest_file = os.path.join(cnf["Dir::Reject"], file_entry)
 
             try:
-                dest_fd = os.open(dest_file, os.O_RDWR | os.O_CREAT | os.O_EXCL, 0644)
-            except OSError, e:
+                dest_fd = os.open(dest_file, os.O_RDWR | os.O_CREAT | os.O_EXCL, 0o644)
+            except OSError as e:
                 # File exists?  Let's find a new name by adding a number
                 if e.errno == errno.EEXIST:
                     try:
@@ -2356,8 +2356,8 @@ distribution."""
 
                     # Make sure we really got it
                     try:
-                        dest_fd = os.open(dest_file, os.O_RDWR|os.O_CREAT|os.O_EXCL, 0644)
-                    except OSError, e:
+                        dest_fd = os.open(dest_file, os.O_RDWR|os.O_CREAT|os.O_EXCL, 0o644)
+                    except OSError as e:
                         # Likewise
                         utils.warn("**WARNING** failed to claim %s in the reject directory." % (file_entry))
                         return
@@ -2365,7 +2365,7 @@ distribution."""
                     raise
             # If we got here, we own the destination file, so we can
             # safely overwrite it.
-            utils.move(file_entry, dest_file, 1, perms=0660)
+            utils.move(file_entry, dest_file, 1, perms=0o660)
             os.close(dest_fd)
 
     ###########################################################################
@@ -2431,7 +2431,7 @@ distribution."""
         # so let's just raise an exception ...
         if os.path.exists(reason_filename):
             os.unlink(reason_filename)
-        reason_fd = os.open(reason_filename, os.O_RDWR|os.O_CREAT|os.O_EXCL, 0644)
+        reason_fd = os.open(reason_filename, os.O_RDWR|os.O_CREAT|os.O_EXCL, 0o644)
 
         rej_template = os.path.join(cnf["Dir::Templates"], "queue.rejected")
 
index 85ac701fe38bad3a07c794569bfcb3af019f455d..050691fe3b474f5b7d7feff10bbeac15dd3344f3 100755 (executable)
@@ -48,7 +48,7 @@ def get_format_from_string(txt):
         if format.re_format.match(txt):
             return format
 
-    raise UnknownFormatError, "Unknown format %r" % txt
+    raise UnknownFormatError("Unknown format %r" % txt)
 
 class SourceFormat(type):
     def __new__(cls, name, bases, attrs):
index 3cbcec739cb9e803ecb496550d3a0def64b45b86..03df5d8590657c9273b5eb1e7fac05db2a0ce19c 100644 (file)
@@ -88,7 +88,7 @@ def fix_maintainer(maintainer):
     else:
         m = re_parse_maintainer.match(maintainer)
         if not m:
-            raise ParseMaintError, "Doesn't parse as a valid Maintainer field."
+            raise ParseMaintError("Doesn't parse as a valid Maintainer field.")
         name = m.group(1)
         email = m.group(2)
 
@@ -106,7 +106,7 @@ def fix_maintainer(maintainer):
         rfc2047_maint = "%s <%s>" % (rfc2047_name, email)
 
     if email.find("@") == -1 and email.find("buildd_") != 0:
-        raise ParseMaintError, "No @ found in email address part."
+        raise ParseMaintError("No @ found in email address part.")
 
     return (rfc822_maint, rfc2047_maint, name, email)
 
index 8bc1b2c7c2c4db01405b6d375e8e30d2fb8981ad..40e47c63e45830887d213f10d8d381ebd75457a3 100755 (executable)
@@ -115,7 +115,7 @@ def open_file(filename, mode='r'):
     try:
         f = open(filename, mode)
     except IOError:
-        raise CantOpenError, filename
+        raise CantOpenError(filename)
     return f
 
 ################################################################################
@@ -172,7 +172,7 @@ def parse_deb822(armored_contents, signing_rules=0, keyrings=None, session=None)
     lines = contents.splitlines(True)
 
     if len(lines) == 0:
-        raise ParseChangesError, "[Empty changes file]"
+        raise ParseChangesError("[Empty changes file]")
 
     # Reindex by line number so we can easily verify the format of
     # .dsc files...
@@ -190,7 +190,7 @@ def parse_deb822(armored_contents, signing_rules=0, keyrings=None, session=None)
         line = indexed_lines[index]
         if line == "" and signing_rules == 1:
             if index != num_of_lines:
-                raise InvalidDscError, index
+                raise InvalidDscError(index)
             break
         slf = re_single_line_field.match(line)
         if slf:
@@ -204,7 +204,7 @@ def parse_deb822(armored_contents, signing_rules=0, keyrings=None, session=None)
         mlf = re_multi_line_field.match(line)
         if mlf:
             if first == -1:
-                raise ParseChangesError, "'%s'\n [Multi-line field continuing on from nothing?]" % (line)
+                raise ParseChangesError("'%s'\n [Multi-line field continuing on from nothing?]" % (line))
             if first == 1 and changes[field] != "":
                 changes[field] += '\n'
             first = 0
@@ -223,7 +223,7 @@ def parse_deb822(armored_contents, signing_rules=0, keyrings=None, session=None)
             changes["source-version"] = srcver.group(2)
 
     if error:
-        raise ParseChangesError, error
+        raise ParseChangesError(error)
 
     return changes
 
@@ -257,7 +257,7 @@ def parse_changes(filename, signing_rules=0, dsc_file=0, keyrings=None):
     try:
         unicode(content, 'utf-8')
     except UnicodeError:
-        raise ChangesUnicodeError, "Changes file not proper utf-8"
+        raise ChangesUnicodeError("Changes file not proper utf-8")
     changes = parse_deb822(content, signing_rules, keyrings=keyrings)
 
 
@@ -272,7 +272,7 @@ def parse_changes(filename, signing_rules=0, dsc_file=0, keyrings=None):
                 missingfields.append(keyword)
 
                 if len(missingfields):
-                    raise ParseChangesError, "Missing mandantory field(s) in changes file (policy 5.5): %s" % (missingfields)
+                    raise ParseChangesError("Missing mandantory field(s) in changes file (policy 5.5): %s" % (missingfields))
 
     return changes
 
@@ -350,7 +350,7 @@ def check_size(where, files):
     for f in files.keys():
         try:
             entry = os.stat(f)
-        except OSError, exc:
+        except OSError as exc:
             if exc.errno == 2:
                 # TODO: This happens when the file is in the pool.
                 continue
@@ -559,7 +559,7 @@ def build_file_list(changes, is_a_dsc=0, field="files", hashname="md5sum"):
             else:
                 (md5, size, name) = s
         except ValueError:
-            raise ParseChangesError, i
+            raise ParseChangesError(i)
 
         if section == "":
             section = "-"
@@ -687,14 +687,14 @@ def send_mail (message, filename=""):
                     os.unlink (filename);
                 return;
 
-        fd = os.open(filename, os.O_RDWR|os.O_EXCL, 0700);
+        fd = os.open(filename, os.O_RDWR|os.O_EXCL, 0o700);
         os.write (fd, message_raw.as_string(True));
         os.close (fd);
 
     # Invoke sendmail
     (result, output) = commands.getstatusoutput("%s < %s" % (Cnf["Dinstall::SendmailCommand"], filename))
     if (result != 0):
-        raise SendmailFailedError, output
+        raise SendmailFailedError(output)
 
     # Clean up any temporary files
     if message:
@@ -712,14 +712,14 @@ def poolify (source, component):
 
 ################################################################################
 
-def move (src, dest, overwrite = 0, perms = 0664):
+def move (src, dest, overwrite = 0, perms = 0o664):
     if os.path.exists(dest) and os.path.isdir(dest):
         dest_dir = dest
     else:
         dest_dir = os.path.dirname(dest)
     if not os.path.exists(dest_dir):
         umask = os.umask(00000)
-        os.makedirs(dest_dir, 02775)
+        os.makedirs(dest_dir, 0o2775)
         os.umask(umask)
     #print "Moving %s to %s..." % (src, dest)
     if os.path.exists(dest) and os.path.isdir(dest):
@@ -735,14 +735,14 @@ def move (src, dest, overwrite = 0, perms = 0664):
     os.chmod(dest, perms)
     os.unlink(src)
 
-def copy (src, dest, overwrite = 0, perms = 0664):
+def copy (src, dest, overwrite = 0, perms = 0o664):
     if os.path.exists(dest) and os.path.isdir(dest):
         dest_dir = dest
     else:
         dest_dir = os.path.dirname(dest)
     if not os.path.exists(dest_dir):
         umask = os.umask(00000)
-        os.makedirs(dest_dir, 02775)
+        os.makedirs(dest_dir, 0o2775)
         os.umask(umask)
     #print "Copying %s to %s..." % (src, dest)
     if os.path.exists(dest) and os.path.isdir(dest):
@@ -1549,7 +1549,7 @@ def get_changes_files(from_dir):
         # Much of the rest of p-u/p-a depends on being in the right place
         os.chdir(from_dir)
         changes_files = [x for x in os.listdir(from_dir) if x.endswith('.changes')]
-    except OSError, e:
+    except OSError as e:
         fubar("Failed to read list from directory %s (%s)" % (from_dir, e))
 
     return changes_files
@@ -1581,7 +1581,7 @@ def parse_wnpp_bug_file(file = "/srv/ftp-master.debian.org/scripts/masterfiles/w
     try:
         f = open(file)
         lines = f.readlines()
-    except IOError, e:
+    except IOError as e:
         print "Warning:  Couldn't open %s; don't know about WNPP bugs, so won't close any." % file
        lines = []
     wnpp = {}
index 0a1d4ddfb50ea9ff318d02df30860f3739d0a487..1ea78ee3a8e4c753885409591a760010b99fcef3 100644 (file)
@@ -6,7 +6,7 @@ The following packages are needed for the database:
 and the following packages for dak itself:
  * python-psycopg2 python-sqlalchemy python-apt gnupg dpkg-dev lintian
    binutils-multiarch python-yaml less python-ldap python-pyrss2gen python-rrdtool
-   symlinks
+   symlinks python-debian
 
 (the schema assumes at least postgresql 9.0; ftpmaster in Debian currently uses
 the squeeze postgresql 9.0 backport)
@@ -41,6 +41,9 @@ Create the additional roles:
 # createuser -S -R -D ftpmaster
 # createuser -S -R -D ftpteam
 # createuser -S -R -D ftptrainee
+# psql -d projectb -c "ALTER GROUP ftpteam ADD USER ftpmaster"
+# psql -d projectb -c "ALTER GROUP ftptrainee ADD USER ftpmaster"
+# psql -d projectb -c "ALTER GROUP ftptrainee ADD USER ftpteam"
 
 Create an empty database with SQL_ASCII encoding:
 # createdb -T template0 -E SQL_ASCII -O dak projectb
index 51d5ade466943c87ba14c78f5483f8fc4e6d9a4f..76021c0249bf639a627954732516e16573b13706 120000 (symlink)
@@ -1 +1 @@
-schema_65.sql
\ No newline at end of file
+schema_68.sql
\ No newline at end of file
diff --git a/setup/schema_65.sql b/setup/schema_65.sql
deleted file mode 100644 (file)
index 6a8ce59..0000000
+++ /dev/null
@@ -1,5591 +0,0 @@
---
--- PostgreSQL database dump
---
-
-SET statement_timeout = 0;
-SET client_encoding = 'SQL_ASCII';
-SET standard_conforming_strings = off;
-SET check_function_bodies = false;
-SET client_min_messages = warning;
-SET escape_string_warning = off;
-
---
--- Name: plperl; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: dak
---
-
-CREATE OR REPLACE PROCEDURAL LANGUAGE plperl;
-
-
-ALTER PROCEDURAL LANGUAGE plperl OWNER TO dak;
-
---
--- Name: plpgsql; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: dak
---
-
-CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql;
-
-
-ALTER PROCEDURAL LANGUAGE plpgsql OWNER TO dak;
-
---
--- Name: plpythonu; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: dak
---
-
-CREATE OR REPLACE PROCEDURAL LANGUAGE plpythonu;
-
-
-ALTER PROCEDURAL LANGUAGE plpythonu OWNER TO dak;
-
-SET search_path = public, pg_catalog;
-
---
--- Name: debversion; Type: SHELL TYPE; Schema: public; Owner: postgres
---
-
-CREATE TYPE debversion;
-
-
---
--- Name: debversionin(cstring); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversionin(cstring) RETURNS debversion
-    LANGUAGE internal IMMUTABLE STRICT
-    AS $$textin$$;
-
-
-ALTER FUNCTION public.debversionin(cstring) OWNER TO postgres;
-
---
--- Name: debversionout(debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversionout(debversion) RETURNS cstring
-    LANGUAGE internal IMMUTABLE STRICT
-    AS $$textout$$;
-
-
-ALTER FUNCTION public.debversionout(debversion) OWNER TO postgres;
-
---
--- Name: debversionrecv(internal); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversionrecv(internal) RETURNS debversion
-    LANGUAGE internal STABLE STRICT
-    AS $$textrecv$$;
-
-
-ALTER FUNCTION public.debversionrecv(internal) OWNER TO postgres;
-
---
--- Name: debversionsend(debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversionsend(debversion) RETURNS bytea
-    LANGUAGE internal STABLE STRICT
-    AS $$textsend$$;
-
-
-ALTER FUNCTION public.debversionsend(debversion) OWNER TO postgres;
-
---
--- Name: debversion; Type: TYPE; Schema: public; Owner: postgres
---
-
-CREATE TYPE debversion (
-    INTERNALLENGTH = variable,
-    INPUT = debversionin,
-    OUTPUT = debversionout,
-    RECEIVE = debversionrecv,
-    SEND = debversionsend,
-    CATEGORY = 'S',
-    ALIGNMENT = int4,
-    STORAGE = extended
-);
-
-
-ALTER TYPE public.debversion OWNER TO postgres;
-
---
--- Name: TYPE debversion; Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON TYPE debversion IS 'Debian package version number';
-
-
---
--- Name: bin_associations_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION bin_associations_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM bin_associations$$;
-
-
-ALTER FUNCTION public.bin_associations_id_max() OWNER TO dak;
-
---
--- Name: binaries_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION binaries_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM binaries$$;
-
-
-ALTER FUNCTION public.binaries_id_max() OWNER TO dak;
-
---
--- Name: debversion(character); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion(character) RETURNS debversion
-    LANGUAGE internal IMMUTABLE STRICT
-    AS $$rtrim1$$;
-
-
-ALTER FUNCTION public.debversion(character) OWNER TO postgres;
-
---
--- Name: debversion_cmp(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_cmp(version1 debversion, version2 debversion) RETURNS integer
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_cmp';
-
-
-ALTER FUNCTION public.debversion_cmp(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_cmp(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_cmp(version1 debversion, version2 debversion) IS 'Compare Debian versions';
-
-
---
--- Name: debversion_compare_single(text, text); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION debversion_compare_single(version1 text, version2 text) RETURNS integer
-    LANGUAGE plperl IMMUTABLE STRICT
-    AS $_$
-     sub order{
-         my ($x) = @_;
-         ##define order(x) ((x) == '~' ? -1      #           : cisdigit((x)) ? 0         #           : !(x) ? 0          #           : cisalpha((x)) ? (x)       #           : (x) + 256)
-         # This comparison is out of dpkg's order to avoid
-         # comparing things to undef and triggering warnings.
-         if (not defined $x or not length $x) {
-              return 0;
-         }
-         elsif ($x eq '~') {
-              return -1;
-         }
-         elsif ($x =~ /^\d$/) {
-              return 0;
-         }
-         elsif ($x =~ /^[A-Z]$/i) {
-              return ord($x);
-         }
-         else {
-              return ord($x) + 256;
-         }
-     }
-
-     sub next_elem(\@){
-         my $a = shift;
-         return @{$a} ? shift @{$a} : undef;
-     }
-     my ($val, $ref) = @_;
-     $val = "" if not defined $val;
-     $ref = "" if not defined $ref;
-     my @val = split //,$val;
-     my @ref = split //,$ref;
-     my $vc = next_elem @val;
-     my $rc = next_elem @ref;
-     while (defined $vc or defined $rc) {
-         my $first_diff = 0;
-         while ((defined $vc and $vc !~ /^\d$/) or
-                (defined $rc and $rc !~ /^\d$/)) {
-              my $vo = order($vc); my $ro = order($rc);
-              # Unlike dpkg's verrevcmp, we only return 1 or -1 here.
-              return (($vo - $ro > 0) ? 1 : -1) if $vo != $ro;
-              $vc = next_elem @val; $rc = next_elem @ref;
-         }
-         while (defined $vc and $vc eq '0') {
-              $vc = next_elem @val;
-         }
-         while (defined $rc and $rc eq '0') {
-              $rc = next_elem @ref;
-         }
-         while (defined $vc and $vc =~ /^\d$/ and
-                defined $rc and $rc =~ /^\d$/) {
-              $first_diff = ord($vc) - ord($rc) if !$first_diff;
-              $vc = next_elem @val; $rc = next_elem @ref;
-         }
-         return 1 if defined $vc and $vc =~ /^\d$/;
-         return -1 if defined $rc and $rc =~ /^\d$/;
-         return (($first_diff  > 0) ? 1 : -1) if $first_diff;
-     }
-     return 0;
-$_$;
-
-
-ALTER FUNCTION public.debversion_compare_single(version1 text, version2 text) OWNER TO dak;
-
---
--- Name: FUNCTION debversion_compare_single(version1 text, version2 text); Type: COMMENT; Schema: public; Owner: dak
---
-
-COMMENT ON FUNCTION debversion_compare_single(version1 text, version2 text) IS 'Compare upstream or revision parts of Debian versions';
-
-
---
--- Name: debversion_eq(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_eq(version1 debversion, version2 debversion) RETURNS boolean
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_eq';
-
-
-ALTER FUNCTION public.debversion_eq(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_eq(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_eq(version1 debversion, version2 debversion) IS 'debversion equal';
-
-
---
--- Name: debversion_ge(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_ge(version1 debversion, version2 debversion) RETURNS boolean
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_ge';
-
-
-ALTER FUNCTION public.debversion_ge(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_ge(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_ge(version1 debversion, version2 debversion) IS 'debversion greater-than-or-equal';
-
-
---
--- Name: debversion_gt(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_gt(version1 debversion, version2 debversion) RETURNS boolean
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_gt';
-
-
-ALTER FUNCTION public.debversion_gt(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_gt(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_gt(version1 debversion, version2 debversion) IS 'debversion greater-than';
-
-
---
--- Name: debversion_hash(debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_hash(debversion) RETURNS integer
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_hash';
-
-
-ALTER FUNCTION public.debversion_hash(debversion) OWNER TO postgres;
-
---
--- Name: debversion_larger(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_larger(version1 debversion, version2 debversion) RETURNS debversion
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_larger';
-
-
-ALTER FUNCTION public.debversion_larger(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: debversion_le(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_le(version1 debversion, version2 debversion) RETURNS boolean
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_le';
-
-
-ALTER FUNCTION public.debversion_le(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_le(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_le(version1 debversion, version2 debversion) IS 'debversion less-than-or-equal';
-
-
---
--- Name: debversion_lt(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_lt(version1 debversion, version2 debversion) RETURNS boolean
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_lt';
-
-
-ALTER FUNCTION public.debversion_lt(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_lt(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_lt(version1 debversion, version2 debversion) IS 'debversion less-than';
-
-
---
--- Name: debversion_ne(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_ne(version1 debversion, version2 debversion) RETURNS boolean
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_ne';
-
-
-ALTER FUNCTION public.debversion_ne(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: FUNCTION debversion_ne(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON FUNCTION debversion_ne(version1 debversion, version2 debversion) IS 'debversion not equal';
-
-
---
--- Name: debversion_smaller(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
---
-
-CREATE FUNCTION debversion_smaller(version1 debversion, version2 debversion) RETURNS debversion
-    LANGUAGE c IMMUTABLE STRICT
-    AS '$libdir/debversion', 'debversion_smaller';
-
-
-ALTER FUNCTION public.debversion_smaller(version1 debversion, version2 debversion) OWNER TO postgres;
-
---
--- Name: dsc_files_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION dsc_files_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM dsc_files$$;
-
-
-ALTER FUNCTION public.dsc_files_id_max() OWNER TO dak;
-
---
--- Name: files_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION files_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM files$$;
-
-
-ALTER FUNCTION public.files_id_max() OWNER TO dak;
-
---
--- Name: override_type_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION override_type_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM override_type$$;
-
-
-ALTER FUNCTION public.override_type_id_max() OWNER TO dak;
-
---
--- Name: priority_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION priority_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM priority$$;
-
-
-ALTER FUNCTION public.priority_id_max() OWNER TO dak;
-
---
--- Name: section_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION section_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM section$$;
-
-
-ALTER FUNCTION public.section_id_max() OWNER TO dak;
-
---
--- Name: source_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION source_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM source$$;
-
-
-ALTER FUNCTION public.source_id_max() OWNER TO dak;
-
---
--- Name: space_concat(text, text); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION space_concat(text, text) RETURNS text
-    LANGUAGE sql
-    AS $_$select case
-WHEN $2 is null or $2 = '' THEN $1
-WHEN $1 is null or $1 = '' THEN $2
-ELSE $1 || ' ' || $2
-END$_$;
-
-
-ALTER FUNCTION public.space_concat(text, text) OWNER TO dak;
-
---
--- Name: src_associations_id_max(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION src_associations_id_max() RETURNS integer
-    LANGUAGE sql
-    AS $$SELECT max(id) FROM src_associations$$;
-
-
-ALTER FUNCTION public.src_associations_id_max() OWNER TO dak;
-
---
--- Name: tfunc_set_modified(); Type: FUNCTION; Schema: public; Owner: dak
---
-
-CREATE FUNCTION tfunc_set_modified() RETURNS trigger
-    LANGUAGE plpgsql
-    AS $$
-    BEGIN NEW.modified = now(); return NEW; END;
-    $$;
-
-
-ALTER FUNCTION public.tfunc_set_modified() OWNER TO dak;
-
---
--- Name: >; Type: OPERATOR; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR > (
-    PROCEDURE = debversion_gt,
-    LEFTARG = debversion,
-    RIGHTARG = debversion,
-    COMMUTATOR = <,
-    NEGATOR = >=
-);
-
-
-ALTER OPERATOR public.> (debversion, debversion) OWNER TO postgres;
-
---
--- Name: OPERATOR > (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON OPERATOR > (debversion, debversion) IS 'debversion greater-than';
-
-
---
--- Name: max(debversion); Type: AGGREGATE; Schema: public; Owner: postgres
---
-
-CREATE AGGREGATE max(debversion) (
-    SFUNC = debversion_larger,
-    STYPE = debversion,
-    SORTOP = >
-);
-
-
-ALTER AGGREGATE public.max(debversion) OWNER TO postgres;
-
---
--- Name: <; Type: OPERATOR; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR < (
-    PROCEDURE = debversion_lt,
-    LEFTARG = debversion,
-    RIGHTARG = debversion,
-    COMMUTATOR = >,
-    NEGATOR = >=
-);
-
-
-ALTER OPERATOR public.< (debversion, debversion) OWNER TO postgres;
-
---
--- Name: OPERATOR < (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON OPERATOR < (debversion, debversion) IS 'debversion less-than';
-
-
---
--- Name: min(debversion); Type: AGGREGATE; Schema: public; Owner: postgres
---
-
-CREATE AGGREGATE min(debversion) (
-    SFUNC = debversion_smaller,
-    STYPE = debversion,
-    SORTOP = <
-);
-
-
-ALTER AGGREGATE public.min(debversion) OWNER TO postgres;
-
---
--- Name: space_separated_list(text); Type: AGGREGATE; Schema: public; Owner: dak
---
-
-CREATE AGGREGATE space_separated_list(text) (
-    SFUNC = space_concat,
-    STYPE = text,
-    INITCOND = ''
-);
-
-
-ALTER AGGREGATE public.space_separated_list(text) OWNER TO dak;
-
---
--- Name: <=; Type: OPERATOR; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR <= (
-    PROCEDURE = debversion_le,
-    LEFTARG = debversion,
-    RIGHTARG = debversion,
-    COMMUTATOR = >=,
-    NEGATOR = >
-);
-
-
-ALTER OPERATOR public.<= (debversion, debversion) OWNER TO postgres;
-
---
--- Name: OPERATOR <= (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON OPERATOR <= (debversion, debversion) IS 'debversion less-than-or-equal';
-
-
---
--- Name: <>; Type: OPERATOR; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR <> (
-    PROCEDURE = debversion_ne,
-    LEFTARG = debversion,
-    RIGHTARG = debversion,
-    COMMUTATOR = <>,
-    NEGATOR = =
-);
-
-
-ALTER OPERATOR public.<> (debversion, debversion) OWNER TO postgres;
-
---
--- Name: OPERATOR <> (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON OPERATOR <> (debversion, debversion) IS 'debversion not equal';
-
-
---
--- Name: =; Type: OPERATOR; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR = (
-    PROCEDURE = debversion_eq,
-    LEFTARG = debversion,
-    RIGHTARG = debversion,
-    COMMUTATOR = =,
-    NEGATOR = <>
-);
-
-
-ALTER OPERATOR public.= (debversion, debversion) OWNER TO postgres;
-
---
--- Name: OPERATOR = (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON OPERATOR = (debversion, debversion) IS 'debversion equal';
-
-
---
--- Name: >=; Type: OPERATOR; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR >= (
-    PROCEDURE = debversion_ge,
-    LEFTARG = debversion,
-    RIGHTARG = debversion,
-    COMMUTATOR = <=,
-    NEGATOR = <
-);
-
-
-ALTER OPERATOR public.>= (debversion, debversion) OWNER TO postgres;
-
---
--- Name: OPERATOR >= (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
---
-
-COMMENT ON OPERATOR >= (debversion, debversion) IS 'debversion greater-than-or-equal';
-
-
---
--- Name: debversion_ops; Type: OPERATOR CLASS; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR CLASS debversion_ops
-    DEFAULT FOR TYPE debversion USING btree AS
-    OPERATOR 1 <(debversion,debversion) ,
-    OPERATOR 2 <=(debversion,debversion) ,
-    OPERATOR 3 =(debversion,debversion) ,
-    OPERATOR 4 >=(debversion,debversion) ,
-    OPERATOR 5 >(debversion,debversion) ,
-    FUNCTION 1 debversion_cmp(debversion,debversion);
-
-
-ALTER OPERATOR CLASS public.debversion_ops USING btree OWNER TO postgres;
-
---
--- Name: debversion_ops; Type: OPERATOR CLASS; Schema: public; Owner: postgres
---
-
-CREATE OPERATOR CLASS debversion_ops
-    DEFAULT FOR TYPE debversion USING hash AS
-    OPERATOR 1 =(debversion,debversion) ,
-    FUNCTION 1 debversion_hash(debversion);
-
-
-ALTER OPERATOR CLASS public.debversion_ops USING hash OWNER TO postgres;
-
-SET search_path = pg_catalog;
-
---
--- Name: CAST (character AS public.debversion); Type: CAST; Schema: pg_catalog; Owner: 
---
-
-CREATE CAST (character AS public.debversion) WITH FUNCTION public.debversion(character);
-
-
---
--- Name: CAST (public.debversion AS character); Type: CAST; Schema: pg_catalog; Owner: 
---
-
-CREATE CAST (public.debversion AS character) WITHOUT FUNCTION AS ASSIGNMENT;
-
-
---
--- Name: CAST (public.debversion AS text); Type: CAST; Schema: pg_catalog; Owner: 
---
-
-CREATE CAST (public.debversion AS text) WITHOUT FUNCTION AS IMPLICIT;
-
-
---
--- Name: CAST (public.debversion AS character varying); Type: CAST; Schema: pg_catalog; Owner: 
---
-
-CREATE CAST (public.debversion AS character varying) WITHOUT FUNCTION AS IMPLICIT;
-
-
---
--- Name: CAST (text AS public.debversion); Type: CAST; Schema: pg_catalog; Owner: 
---
-
-CREATE CAST (text AS public.debversion) WITHOUT FUNCTION AS ASSIGNMENT;
-
-
---
--- Name: CAST (character varying AS public.debversion); Type: CAST; Schema: pg_catalog; Owner: 
---
-
-CREATE CAST (character varying AS public.debversion) WITHOUT FUNCTION AS ASSIGNMENT;
-
-
-SET search_path = public, pg_catalog;
-
---
--- Name: bin_associations_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE bin_associations_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.bin_associations_id_seq OWNER TO dak;
-
-SET default_tablespace = '';
-
-SET default_with_oids = false;
-
---
--- Name: bin_associations; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE bin_associations (
-    id integer DEFAULT nextval('bin_associations_id_seq'::regclass) NOT NULL,
-    suite integer NOT NULL,
-    bin integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.bin_associations OWNER TO dak;
-
---
--- Name: binaries_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE binaries_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.binaries_id_seq OWNER TO dak;
-
---
--- Name: binaries; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE binaries (
-    id integer DEFAULT nextval('binaries_id_seq'::regclass) NOT NULL,
-    package text NOT NULL,
-    version debversion NOT NULL,
-    maintainer integer NOT NULL,
-    source integer NOT NULL,
-    architecture integer NOT NULL,
-    file integer NOT NULL,
-    type text NOT NULL,
-    sig_fpr integer,
-    install_date timestamp with time zone DEFAULT now(),
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    stanza text
-);
-
-
-ALTER TABLE public.binaries OWNER TO dak;
-
---
--- Name: bin_associations_binaries; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW bin_associations_binaries AS
-    SELECT bin_associations.id, bin_associations.bin, binaries.package, binaries.version, bin_associations.suite, binaries.architecture, binaries.source FROM (bin_associations JOIN binaries ON ((bin_associations.bin = binaries.id)));
-
-
-ALTER TABLE public.bin_associations_binaries OWNER TO dak;
-
---
--- Name: source_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE source_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.source_id_seq OWNER TO dak;
-
---
--- Name: source; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE source (
-    id integer DEFAULT nextval('source_id_seq'::regclass) NOT NULL,
-    source text NOT NULL,
-    version debversion NOT NULL,
-    maintainer integer NOT NULL,
-    file integer NOT NULL,
-    sig_fpr integer,
-    install_date timestamp with time zone NOT NULL,
-    changedby integer NOT NULL,
-    dm_upload_allowed boolean DEFAULT false NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    stanza text
-);
-
-
-ALTER TABLE public.source OWNER TO dak;
-
---
--- Name: src_associations_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE src_associations_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.src_associations_id_seq OWNER TO dak;
-
---
--- Name: src_associations; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE src_associations (
-    id integer DEFAULT nextval('src_associations_id_seq'::regclass) NOT NULL,
-    suite integer NOT NULL,
-    source integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.src_associations OWNER TO dak;
-
---
--- Name: src_associations_bin; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW src_associations_bin AS
-    SELECT src_associations.id, src_associations.source, src_associations.suite, binaries.id AS bin, binaries.architecture FROM ((src_associations JOIN source ON ((src_associations.source = source.id))) JOIN binaries ON ((source.id = binaries.source)));
-
-
-ALTER TABLE public.src_associations_bin OWNER TO dak;
-
---
--- Name: almost_obsolete_all_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW almost_obsolete_all_associations AS
-    SELECT bin_associations_binaries.id, bin_associations_binaries.bin, bin_associations_binaries.package, bin_associations_binaries.version, bin_associations_binaries.suite FROM (bin_associations_binaries LEFT JOIN src_associations_bin USING (bin, suite, architecture)) WHERE ((src_associations_bin.source IS NULL) AND (bin_associations_binaries.architecture = 2));
-
-
-ALTER TABLE public.almost_obsolete_all_associations OWNER TO dak;
-
---
--- Name: any_associations_source; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW any_associations_source AS
-    SELECT bin_associations.id, bin_associations.suite, binaries.id AS bin, binaries.package, binaries.version AS binver, binaries.architecture, source.id AS src, source.source, source.version AS srcver FROM ((bin_associations JOIN binaries ON (((bin_associations.bin = binaries.id) AND (binaries.architecture <> 2)))) JOIN source ON ((binaries.source = source.id)));
-
-
-ALTER TABLE public.any_associations_source OWNER TO dak;
-
---
--- Name: src_associations_src; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW src_associations_src AS
-    SELECT src_associations.id, src_associations.suite, source.id AS src, source.source, source.version FROM (src_associations JOIN source ON ((src_associations.source = source.id)));
-
-
-ALTER TABLE public.src_associations_src OWNER TO dak;
-
---
--- Name: almost_obsolete_src_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW almost_obsolete_src_associations AS
-    SELECT src_associations_src.id, src_associations_src.src, src_associations_src.source, src_associations_src.version, src_associations_src.suite FROM (src_associations_src LEFT JOIN any_associations_source USING (src, suite)) WHERE (any_associations_source.bin IS NULL);
-
-
-ALTER TABLE public.almost_obsolete_src_associations OWNER TO dak;
-
---
--- Name: architecture_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE architecture_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.architecture_id_seq OWNER TO dak;
-
---
--- Name: architecture; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE architecture (
-    id integer DEFAULT nextval('architecture_id_seq'::regclass) NOT NULL,
-    arch_string text NOT NULL,
-    description text,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.architecture OWNER TO dak;
-
---
--- Name: archive_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE archive_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.archive_id_seq OWNER TO dak;
-
---
--- Name: archive; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE archive (
-    id integer DEFAULT nextval('archive_id_seq'::regclass) NOT NULL,
-    name text NOT NULL,
-    origin_server text,
-    description text,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    primary_mirror text
-);
-
-
-ALTER TABLE public.archive OWNER TO dak;
-
---
--- Name: bin_contents; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE bin_contents (
-    file text NOT NULL,
-    binary_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.bin_contents OWNER TO dak;
-
---
--- Name: binaries_metadata; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE binaries_metadata (
-    bin_id integer NOT NULL,
-    key_id integer NOT NULL,
-    value text NOT NULL
-);
-
-
-ALTER TABLE public.binaries_metadata OWNER TO dak;
-
---
--- Name: suite_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE suite_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.suite_id_seq OWNER TO dak;
-
---
--- Name: suite; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE suite (
-    id integer DEFAULT nextval('suite_id_seq'::regclass) NOT NULL,
-    suite_name text NOT NULL,
-    version text,
-    origin text,
-    label text,
-    description text,
-    untouchable boolean DEFAULT false NOT NULL,
-    codename text,
-    overridecodename text,
-    validtime integer DEFAULT 604800 NOT NULL,
-    priority integer DEFAULT 0 NOT NULL,
-    notautomatic boolean DEFAULT false NOT NULL,
-    copychanges text,
-    overridesuite text,
-    policy_queue_id integer,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    changelog text,
-    butautomaticupgrades boolean DEFAULT false NOT NULL,
-    signingkeys text[],
-    announce text[],
-    CONSTRAINT bau_needs_na_set CHECK (((NOT butautomaticupgrades) OR notautomatic))
-);
-
-
-ALTER TABLE public.suite OWNER TO dak;
-
---
--- Name: binaries_suite_arch; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW binaries_suite_arch AS
-    SELECT bin_associations.id, binaries.id AS bin, binaries.package, binaries.version, binaries.source, bin_associations.suite, suite.suite_name, binaries.architecture, architecture.arch_string FROM (((binaries JOIN bin_associations ON ((binaries.id = bin_associations.bin))) JOIN suite ON ((suite.id = bin_associations.suite))) JOIN architecture ON ((binaries.architecture = architecture.id)));
-
-
-ALTER TABLE public.binaries_suite_arch OWNER TO dak;
-
---
--- Name: binary_acl; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE binary_acl (
-    id integer NOT NULL,
-    access_level text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.binary_acl OWNER TO dak;
-
---
--- Name: binary_acl_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE binary_acl_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.binary_acl_id_seq OWNER TO dak;
-
---
--- Name: binary_acl_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE binary_acl_id_seq OWNED BY binary_acl.id;
-
-
---
--- Name: binary_acl_map; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE binary_acl_map (
-    id integer NOT NULL,
-    fingerprint_id integer NOT NULL,
-    architecture_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.binary_acl_map OWNER TO dak;
-
---
--- Name: binary_acl_map_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE binary_acl_map_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.binary_acl_map_id_seq OWNER TO dak;
-
---
--- Name: binary_acl_map_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE binary_acl_map_id_seq OWNED BY binary_acl_map.id;
-
-
---
--- Name: files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE files_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.files_id_seq OWNER TO dak;
-
---
--- Name: files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE files (
-    id integer DEFAULT nextval('files_id_seq'::regclass) NOT NULL,
-    filename text NOT NULL,
-    size bigint NOT NULL,
-    md5sum text NOT NULL,
-    location integer NOT NULL,
-    last_used timestamp with time zone,
-    sha1sum text,
-    sha256sum text,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.files OWNER TO dak;
-
---
--- Name: location_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE location_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.location_id_seq OWNER TO dak;
-
---
--- Name: location; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE location (
-    id integer DEFAULT nextval('location_id_seq'::regclass) NOT NULL,
-    path text NOT NULL,
-    component integer,
-    archive integer,
-    type text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.location OWNER TO dak;
-
---
--- Name: binfiles_suite_component_arch; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW binfiles_suite_component_arch AS
-    SELECT files.filename, binaries.type, location.path, location.component, bin_associations.suite, binaries.architecture FROM (((binaries JOIN bin_associations ON ((binaries.id = bin_associations.bin))) JOIN files ON ((binaries.file = files.id))) JOIN location ON ((files.location = location.id)));
-
-
-ALTER TABLE public.binfiles_suite_component_arch OWNER TO dak;
-
---
--- Name: build_queue; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE build_queue (
-    id integer NOT NULL,
-    queue_name text NOT NULL,
-    path text NOT NULL,
-    copy_files boolean DEFAULT false NOT NULL,
-    generate_metadata boolean DEFAULT false NOT NULL,
-    origin text,
-    label text,
-    releasedescription text,
-    signingkey text,
-    stay_of_execution integer DEFAULT 86400 NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    notautomatic boolean DEFAULT false NOT NULL,
-    CONSTRAINT build_queue_meta_sanity_check CHECK (((generate_metadata IS FALSE) OR (((origin IS NOT NULL) AND (label IS NOT NULL)) AND (releasedescription IS NOT NULL)))),
-    CONSTRAINT build_queue_stay_of_execution_check CHECK ((stay_of_execution >= 0))
-);
-
-
-ALTER TABLE public.build_queue OWNER TO dak;
-
---
--- Name: build_queue_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE build_queue_files (
-    id integer NOT NULL,
-    build_queue_id integer NOT NULL,
-    insertdate timestamp without time zone DEFAULT now() NOT NULL,
-    lastused timestamp without time zone,
-    filename text NOT NULL,
-    fileid integer,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.build_queue_files OWNER TO dak;
-
---
--- Name: build_queue_files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE build_queue_files_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.build_queue_files_id_seq OWNER TO dak;
-
---
--- Name: build_queue_files_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE build_queue_files_id_seq OWNED BY build_queue_files.id;
-
-
---
--- Name: build_queue_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE build_queue_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.build_queue_id_seq OWNER TO dak;
-
---
--- Name: build_queue_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE build_queue_id_seq OWNED BY build_queue.id;
-
-
---
--- Name: build_queue_policy_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE build_queue_policy_files (
-    build_queue_id integer NOT NULL,
-    file_id integer NOT NULL,
-    filename text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    lastused timestamp without time zone
-);
-
-
-ALTER TABLE public.build_queue_policy_files OWNER TO dak;
-
---
--- Name: changelogs_text; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changelogs_text (
-    id integer NOT NULL,
-    changelog text
-);
-
-
-ALTER TABLE public.changelogs_text OWNER TO dak;
-
---
--- Name: changes; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes (
-    id integer NOT NULL,
-    changesname text NOT NULL,
-    seen timestamp with time zone DEFAULT now() NOT NULL,
-    source text NOT NULL,
-    binaries text NOT NULL,
-    architecture text NOT NULL,
-    version text NOT NULL,
-    distribution text NOT NULL,
-    urgency text NOT NULL,
-    maintainer text NOT NULL,
-    fingerprint text NOT NULL,
-    changedby text NOT NULL,
-    date text NOT NULL,
-    in_queue integer,
-    approved_for integer,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    changelog_id integer
-);
-
-
-ALTER TABLE public.changes OWNER TO dak;
-
---
--- Name: changelogs; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW changelogs AS
-    SELECT cl.id, c.source, (c.version)::debversion AS version, c.architecture, cl.changelog, c.distribution FROM (changes c JOIN changelogs_text cl ON ((cl.id = c.changelog_id)));
-
-
-ALTER TABLE public.changelogs OWNER TO dak;
-
---
--- Name: changelogs_text_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE changelogs_text_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.changelogs_text_id_seq OWNER TO dak;
-
---
--- Name: changelogs_text_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE changelogs_text_id_seq OWNED BY changelogs_text.id;
-
-
---
--- Name: changes_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE changes_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.changes_id_seq OWNER TO dak;
-
---
--- Name: changes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE changes_id_seq OWNED BY changes.id;
-
-
---
--- Name: changes_pending_binaries; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes_pending_binaries (
-    id integer NOT NULL,
-    change_id integer NOT NULL,
-    package text NOT NULL,
-    version debversion NOT NULL,
-    architecture_id integer NOT NULL,
-    source_id integer,
-    pending_source_id integer,
-    pending_file_id integer,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    CONSTRAINT changes_pending_binaries_check CHECK (((source_id IS NOT NULL) OR (pending_source_id IS NOT NULL)))
-);
-
-
-ALTER TABLE public.changes_pending_binaries OWNER TO dak;
-
---
--- Name: changes_pending_binaries_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE changes_pending_binaries_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.changes_pending_binaries_id_seq OWNER TO dak;
-
---
--- Name: changes_pending_binaries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE changes_pending_binaries_id_seq OWNED BY changes_pending_binaries.id;
-
-
---
--- Name: changes_pending_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes_pending_files (
-    id integer NOT NULL,
-    filename text NOT NULL,
-    size bigint NOT NULL,
-    md5sum text NOT NULL,
-    sha1sum text NOT NULL,
-    sha256sum text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    processed boolean DEFAULT false
-);
-
-
-ALTER TABLE public.changes_pending_files OWNER TO dak;
-
---
--- Name: changes_pending_files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE changes_pending_files_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.changes_pending_files_id_seq OWNER TO dak;
-
---
--- Name: changes_pending_files_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE changes_pending_files_id_seq OWNED BY changes_pending_files.id;
-
-
---
--- Name: changes_pending_files_map; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes_pending_files_map (
-    file_id integer NOT NULL,
-    change_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.changes_pending_files_map OWNER TO dak;
-
---
--- Name: changes_pending_source; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes_pending_source (
-    id integer NOT NULL,
-    change_id integer NOT NULL,
-    source text NOT NULL,
-    version debversion NOT NULL,
-    maintainer_id integer NOT NULL,
-    changedby_id integer NOT NULL,
-    sig_fpr integer NOT NULL,
-    dm_upload_allowed boolean DEFAULT false NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.changes_pending_source OWNER TO dak;
-
---
--- Name: changes_pending_source_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes_pending_source_files (
-    pending_source_id integer NOT NULL,
-    pending_file_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.changes_pending_source_files OWNER TO dak;
-
---
--- Name: changes_pending_source_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE changes_pending_source_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.changes_pending_source_id_seq OWNER TO dak;
-
---
--- Name: changes_pending_source_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE changes_pending_source_id_seq OWNED BY changes_pending_source.id;
-
-
---
--- Name: changes_pool_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE changes_pool_files (
-    changeid integer NOT NULL,
-    fileid integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.changes_pool_files OWNER TO dak;
-
---
--- Name: component_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE component_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.component_id_seq OWNER TO dak;
-
---
--- Name: component; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE component (
-    id integer DEFAULT nextval('component_id_seq'::regclass) NOT NULL,
-    name text NOT NULL,
-    description text,
-    meets_dfsg boolean,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.component OWNER TO dak;
-
---
--- Name: config; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE config (
-    id integer NOT NULL,
-    name text NOT NULL,
-    value text,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.config OWNER TO dak;
-
---
--- Name: config_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE config_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.config_id_seq OWNER TO dak;
-
---
--- Name: config_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE config_id_seq OWNED BY config.id;
-
-
---
--- Name: dsc_files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE dsc_files_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.dsc_files_id_seq OWNER TO dak;
-
---
--- Name: dsc_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE dsc_files (
-    id integer DEFAULT nextval('dsc_files_id_seq'::regclass) NOT NULL,
-    source integer NOT NULL,
-    file integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.dsc_files OWNER TO dak;
-
---
--- Name: external_overrides; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE external_overrides (
-    package text NOT NULL,
-    key text NOT NULL,
-    value text NOT NULL,
-    suite integer NOT NULL,
-    component integer NOT NULL
-);
-
-
-ALTER TABLE public.external_overrides OWNER TO dak;
-
---
--- Name: extra_src_references; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE extra_src_references (
-    bin_id integer NOT NULL,
-    src_id integer NOT NULL
-);
-
-
-ALTER TABLE public.extra_src_references OWNER TO dak;
-
---
--- Name: file_arch_suite; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW file_arch_suite AS
-    SELECT f.id AS file, f.size, b.architecture, s.id AS suite FROM files f, binaries b, bin_associations ba, suite s WHERE (((f.id = b.file) AND (b.id = ba.bin)) AND (ba.suite = s.id));
-
-
-ALTER TABLE public.file_arch_suite OWNER TO dak;
-
---
--- Name: fingerprint_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE fingerprint_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.fingerprint_id_seq OWNER TO dak;
-
---
--- Name: fingerprint; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE fingerprint (
-    id integer DEFAULT nextval('fingerprint_id_seq'::regclass) NOT NULL,
-    fingerprint text NOT NULL,
-    uid integer,
-    keyring integer,
-    source_acl_id integer,
-    binary_acl_id integer,
-    binary_reject boolean DEFAULT true NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.fingerprint OWNER TO dak;
-
---
--- Name: keyring_acl_map; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE keyring_acl_map (
-    id integer NOT NULL,
-    keyring_id integer NOT NULL,
-    architecture_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.keyring_acl_map OWNER TO dak;
-
---
--- Name: keyring_acl_map_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE keyring_acl_map_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.keyring_acl_map_id_seq OWNER TO dak;
-
---
--- Name: keyring_acl_map_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE keyring_acl_map_id_seq OWNED BY keyring_acl_map.id;
-
-
---
--- Name: keyrings; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE keyrings (
-    id integer NOT NULL,
-    name text NOT NULL,
-    default_source_acl_id integer,
-    default_binary_acl_id integer,
-    default_binary_reject boolean DEFAULT true NOT NULL,
-    priority integer DEFAULT 100 NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    active boolean DEFAULT true
-);
-
-
-ALTER TABLE public.keyrings OWNER TO dak;
-
---
--- Name: keyrings_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE keyrings_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.keyrings_id_seq OWNER TO dak;
-
---
--- Name: keyrings_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE keyrings_id_seq OWNED BY keyrings.id;
-
-
---
--- Name: maintainer_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE maintainer_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.maintainer_id_seq OWNER TO dak;
-
---
--- Name: maintainer; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE maintainer (
-    id integer DEFAULT nextval('maintainer_id_seq'::regclass) NOT NULL,
-    name text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.maintainer OWNER TO dak;
-
---
--- Name: metadata_keys; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE metadata_keys (
-    key_id integer NOT NULL,
-    key text NOT NULL,
-    ordering integer DEFAULT 0 NOT NULL
-);
-
-
-ALTER TABLE public.metadata_keys OWNER TO dak;
-
---
--- Name: metadata_keys_key_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE metadata_keys_key_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.metadata_keys_key_id_seq OWNER TO dak;
-
---
--- Name: metadata_keys_key_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE metadata_keys_key_id_seq OWNED BY metadata_keys.key_id;
-
-
---
--- Name: new_comments; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE new_comments (
-    id integer NOT NULL,
-    package text NOT NULL,
-    version text NOT NULL,
-    comment text NOT NULL,
-    author text NOT NULL,
-    notedate timestamp with time zone DEFAULT now() NOT NULL,
-    trainee boolean DEFAULT false NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.new_comments OWNER TO dak;
-
---
--- Name: new_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE new_comments_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.new_comments_id_seq OWNER TO dak;
-
---
--- Name: new_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE new_comments_id_seq OWNED BY new_comments.id;
-
-
---
--- Name: newest_all_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW newest_all_associations AS
-    SELECT binaries_suite_arch.package, max(binaries_suite_arch.version) AS version, binaries_suite_arch.suite, binaries_suite_arch.architecture FROM binaries_suite_arch WHERE (binaries_suite_arch.architecture = 2) GROUP BY binaries_suite_arch.package, binaries_suite_arch.suite, binaries_suite_arch.architecture;
-
-
-ALTER TABLE public.newest_all_associations OWNER TO dak;
-
---
--- Name: newest_any_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW newest_any_associations AS
-    SELECT binaries_suite_arch.package, max(binaries_suite_arch.version) AS version, binaries_suite_arch.suite, binaries_suite_arch.architecture FROM binaries_suite_arch WHERE (binaries_suite_arch.architecture > 2) GROUP BY binaries_suite_arch.package, binaries_suite_arch.suite, binaries_suite_arch.architecture;
-
-
-ALTER TABLE public.newest_any_associations OWNER TO dak;
-
---
--- Name: source_suite; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW source_suite AS
-    SELECT src_associations.id, source.id AS src, source.source, source.version, src_associations.suite, suite.suite_name, source.install_date FROM ((source JOIN src_associations ON ((source.id = src_associations.source))) JOIN suite ON ((suite.id = src_associations.suite)));
-
-
-ALTER TABLE public.source_suite OWNER TO dak;
-
---
--- Name: newest_source; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW newest_source AS
-    SELECT source_suite.source, max(source_suite.version) AS version, source_suite.suite FROM source_suite GROUP BY source_suite.source, source_suite.suite;
-
-
-ALTER TABLE public.newest_source OWNER TO dak;
-
---
--- Name: newest_src_association; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW newest_src_association AS
-    SELECT source_suite.id, source_suite.src, source_suite.source, source_suite.version, source_suite.suite FROM (source_suite JOIN newest_source USING (source, version, suite));
-
-
-ALTER TABLE public.newest_src_association OWNER TO dak;
-
---
--- Name: obsolete_all_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW obsolete_all_associations AS
-    SELECT almost.id, almost.bin, almost.package, almost.version, almost.suite FROM (almost_obsolete_all_associations almost JOIN newest_all_associations newest ON ((((almost.package = newest.package) AND (almost.version < newest.version)) AND (almost.suite = newest.suite))));
-
-
-ALTER TABLE public.obsolete_all_associations OWNER TO dak;
-
---
--- Name: obsolete_any_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW obsolete_any_associations AS
-    SELECT binaries_suite_arch.id, binaries_suite_arch.architecture, binaries_suite_arch.version, binaries_suite_arch.package, binaries_suite_arch.suite FROM (binaries_suite_arch JOIN newest_any_associations ON (((((binaries_suite_arch.architecture = newest_any_associations.architecture) AND (binaries_suite_arch.package = newest_any_associations.package)) AND (binaries_suite_arch.suite = newest_any_associations.suite)) AND (binaries_suite_arch.version <> newest_any_associations.version))));
-
-
-ALTER TABLE public.obsolete_any_associations OWNER TO dak;
-
---
--- Name: obsolete_any_by_all_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW obsolete_any_by_all_associations AS
-    SELECT binaries_suite_arch.id, binaries_suite_arch.package, binaries_suite_arch.version, binaries_suite_arch.suite, binaries_suite_arch.architecture FROM (binaries_suite_arch JOIN newest_all_associations ON (((((binaries_suite_arch.package = newest_all_associations.package) AND (binaries_suite_arch.version < newest_all_associations.version)) AND (binaries_suite_arch.suite = newest_all_associations.suite)) AND (binaries_suite_arch.architecture > 2))));
-
-
-ALTER TABLE public.obsolete_any_by_all_associations OWNER TO dak;
-
---
--- Name: obsolete_src_associations; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW obsolete_src_associations AS
-    SELECT almost.id, almost.src, almost.source, almost.version, almost.suite FROM (almost_obsolete_src_associations almost JOIN newest_src_association newest ON ((((almost.source = newest.source) AND (almost.version < newest.version)) AND (almost.suite = newest.suite))));
-
-
-ALTER TABLE public.obsolete_src_associations OWNER TO dak;
-
---
--- Name: override; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE override (
-    package text NOT NULL,
-    suite integer NOT NULL,
-    component integer NOT NULL,
-    priority integer,
-    section integer NOT NULL,
-    type integer NOT NULL,
-    maintainer text,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.override OWNER TO dak;
-
---
--- Name: override_type_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE override_type_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.override_type_id_seq OWNER TO dak;
-
---
--- Name: override_type; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE override_type (
-    id integer DEFAULT nextval('override_type_id_seq'::regclass) NOT NULL,
-    type text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.override_type OWNER TO dak;
-
---
--- Name: policy_queue; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE policy_queue (
-    id integer NOT NULL,
-    queue_name text NOT NULL,
-    path text NOT NULL,
-    perms character(4) DEFAULT '0660'::bpchar NOT NULL,
-    change_perms character(4) DEFAULT '0660'::bpchar NOT NULL,
-    generate_metadata boolean DEFAULT false NOT NULL,
-    origin text,
-    label text,
-    releasedescription text,
-    signingkey text,
-    stay_of_execution integer DEFAULT 86400 NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    send_to_build_queues boolean DEFAULT false NOT NULL,
-    CONSTRAINT policy_queue_change_perms_check CHECK ((change_perms ~ similar_escape('[0-7][0-7][0-7][0-7]'::text, NULL::text))),
-    CONSTRAINT policy_queue_meta_sanity_check CHECK (((generate_metadata IS FALSE) OR (((origin IS NOT NULL) AND (label IS NOT NULL)) AND (releasedescription IS NOT NULL)))),
-    CONSTRAINT policy_queue_perms_check CHECK ((perms ~ similar_escape('[0-7][0-7][0-7][0-7]'::text, NULL::text))),
-    CONSTRAINT policy_queue_stay_of_execution_check CHECK ((stay_of_execution >= 0))
-);
-
-
-ALTER TABLE public.policy_queue OWNER TO dak;
-
---
--- Name: policy_queue_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE policy_queue_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.policy_queue_id_seq OWNER TO dak;
-
---
--- Name: policy_queue_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE policy_queue_id_seq OWNED BY policy_queue.id;
-
-
---
--- Name: priority_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE priority_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.priority_id_seq OWNER TO dak;
-
---
--- Name: priority; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE priority (
-    id integer DEFAULT nextval('priority_id_seq'::regclass) NOT NULL,
-    priority text NOT NULL,
-    level integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.priority OWNER TO dak;
-
---
--- Name: section_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE section_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    MAXVALUE 2147483647
-    CACHE 1;
-
-
-ALTER TABLE public.section_id_seq OWNER TO dak;
-
---
--- Name: section; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE section (
-    id integer DEFAULT nextval('section_id_seq'::regclass) NOT NULL,
-    section text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.section OWNER TO dak;
-
---
--- Name: source_acl; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE source_acl (
-    id integer NOT NULL,
-    access_level text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.source_acl OWNER TO dak;
-
---
--- Name: source_acl_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE source_acl_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.source_acl_id_seq OWNER TO dak;
-
---
--- Name: source_acl_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE source_acl_id_seq OWNED BY source_acl.id;
-
-
---
--- Name: source_metadata; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE source_metadata (
-    src_id integer NOT NULL,
-    key_id integer NOT NULL,
-    value text NOT NULL
-);
-
-
-ALTER TABLE public.source_metadata OWNER TO dak;
-
---
--- Name: src_contents; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE src_contents (
-    file text NOT NULL,
-    source_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.src_contents OWNER TO dak;
-
---
--- Name: src_format; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE src_format (
-    id integer NOT NULL,
-    format_name text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.src_format OWNER TO dak;
-
---
--- Name: src_format_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE src_format_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.src_format_id_seq OWNER TO dak;
-
---
--- Name: src_format_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE src_format_id_seq OWNED BY src_format.id;
-
-
---
--- Name: src_uploaders; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE src_uploaders (
-    id integer NOT NULL,
-    source integer NOT NULL,
-    maintainer integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.src_uploaders OWNER TO dak;
-
---
--- Name: src_uploaders_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE src_uploaders_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.src_uploaders_id_seq OWNER TO dak;
-
---
--- Name: src_uploaders_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE src_uploaders_id_seq OWNED BY src_uploaders.id;
-
-
---
--- Name: suite_architectures; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE suite_architectures (
-    suite integer NOT NULL,
-    architecture integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.suite_architectures OWNER TO dak;
-
---
--- Name: suite_arch_by_name; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW suite_arch_by_name AS
-    SELECT suite.suite_name AS suite, a.arch_string AS arch FROM ((suite_architectures sa JOIN architecture a ON ((sa.architecture = a.id))) JOIN suite ON ((sa.suite = suite.id))) WHERE (a.arch_string <> ALL (ARRAY['all'::text, 'source'::text]));
-
-
-ALTER TABLE public.suite_arch_by_name OWNER TO dak;
-
---
--- Name: suite_build_queue_copy; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE suite_build_queue_copy (
-    suite integer NOT NULL,
-    build_queue_id integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.suite_build_queue_copy OWNER TO dak;
-
---
--- Name: suite_src_formats; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE suite_src_formats (
-    suite integer NOT NULL,
-    src_format integer NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.suite_src_formats OWNER TO dak;
-
---
--- Name: uid_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE uid_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.uid_id_seq OWNER TO dak;
-
---
--- Name: uid; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE uid (
-    id integer DEFAULT nextval('uid_id_seq'::regclass) NOT NULL,
-    uid text NOT NULL,
-    name text,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL
-);
-
-
-ALTER TABLE public.uid OWNER TO dak;
-
---
--- Name: upload_blocks; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE upload_blocks (
-    id integer NOT NULL,
-    source text NOT NULL,
-    version debversion,
-    fingerprint_id integer,
-    uid_id integer,
-    reason text NOT NULL,
-    created timestamp with time zone DEFAULT now() NOT NULL,
-    modified timestamp with time zone DEFAULT now() NOT NULL,
-    CONSTRAINT upload_blocks_check CHECK (((fingerprint_id IS NOT NULL) OR (uid_id IS NOT NULL)))
-);
-
-
-ALTER TABLE public.upload_blocks OWNER TO dak;
-
---
--- Name: upload_blocks_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
---
-
-CREATE SEQUENCE upload_blocks_id_seq
-    START WITH 1
-    INCREMENT BY 1
-    NO MINVALUE
-    NO MAXVALUE
-    CACHE 1;
-
-
-ALTER TABLE public.upload_blocks_id_seq OWNER TO dak;
-
---
--- Name: upload_blocks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
---
-
-ALTER SEQUENCE upload_blocks_id_seq OWNED BY upload_blocks.id;
-
-
---
--- Name: version_check; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE TABLE version_check (
-    suite integer NOT NULL,
-    "check" text NOT NULL,
-    reference integer NOT NULL,
-    CONSTRAINT version_check_check_check CHECK (("check" = ANY (ARRAY['Enhances'::text, 'MustBeNewerThan'::text, 'MustBeOlderThan'::text])))
-);
-
-
-ALTER TABLE public.version_check OWNER TO dak;
-
---
--- Name: version_checks; Type: VIEW; Schema: public; Owner: dak
---
-
-CREATE VIEW version_checks AS
-    SELECT s.suite_name AS source_suite, v."check" AS condition, t.suite_name AS target_suite FROM ((suite s JOIN version_check v ON ((s.id = v.suite))) JOIN suite t ON ((v.reference = t.id))) ORDER BY s.suite_name, v."check", t.suite_name;
-
-
-ALTER TABLE public.version_checks OWNER TO dak;
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE binary_acl ALTER COLUMN id SET DEFAULT nextval('binary_acl_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE binary_acl_map ALTER COLUMN id SET DEFAULT nextval('binary_acl_map_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE build_queue ALTER COLUMN id SET DEFAULT nextval('build_queue_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE build_queue_files ALTER COLUMN id SET DEFAULT nextval('build_queue_files_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE changelogs_text ALTER COLUMN id SET DEFAULT nextval('changelogs_text_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE changes ALTER COLUMN id SET DEFAULT nextval('changes_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE changes_pending_binaries ALTER COLUMN id SET DEFAULT nextval('changes_pending_binaries_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE changes_pending_files ALTER COLUMN id SET DEFAULT nextval('changes_pending_files_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE changes_pending_source ALTER COLUMN id SET DEFAULT nextval('changes_pending_source_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE config ALTER COLUMN id SET DEFAULT nextval('config_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE keyring_acl_map ALTER COLUMN id SET DEFAULT nextval('keyring_acl_map_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE keyrings ALTER COLUMN id SET DEFAULT nextval('keyrings_id_seq'::regclass);
-
-
---
--- Name: key_id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE metadata_keys ALTER COLUMN key_id SET DEFAULT nextval('metadata_keys_key_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE new_comments ALTER COLUMN id SET DEFAULT nextval('new_comments_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE policy_queue ALTER COLUMN id SET DEFAULT nextval('policy_queue_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE source_acl ALTER COLUMN id SET DEFAULT nextval('source_acl_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE src_format ALTER COLUMN id SET DEFAULT nextval('src_format_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE src_uploaders ALTER COLUMN id SET DEFAULT nextval('src_uploaders_id_seq'::regclass);
-
-
---
--- Name: id; Type: DEFAULT; Schema: public; Owner: dak
---
-
-ALTER TABLE upload_blocks ALTER COLUMN id SET DEFAULT nextval('upload_blocks_id_seq'::regclass);
-
-
---
--- Name: architecture_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY architecture
-    ADD CONSTRAINT architecture_pkey PRIMARY KEY (id);
-
-
---
--- Name: archive_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY archive
-    ADD CONSTRAINT archive_pkey PRIMARY KEY (id);
-
-
---
--- Name: bin_associations_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY bin_associations
-    ADD CONSTRAINT bin_associations_pkey PRIMARY KEY (id);
-
-
---
--- Name: bin_contents_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY bin_contents
-    ADD CONSTRAINT bin_contents_pkey PRIMARY KEY (file, binary_id);
-
-
---
--- Name: binaries_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY binaries_metadata
-    ADD CONSTRAINT binaries_metadata_pkey PRIMARY KEY (bin_id, key_id);
-
-
---
--- Name: binaries_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY binaries
-    ADD CONSTRAINT binaries_pkey PRIMARY KEY (id);
-
-
---
--- Name: binary_acl_access_level_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY binary_acl
-    ADD CONSTRAINT binary_acl_access_level_key UNIQUE (access_level);
-
-
---
--- Name: binary_acl_map_fingerprint_id_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY binary_acl_map
-    ADD CONSTRAINT binary_acl_map_fingerprint_id_key UNIQUE (fingerprint_id, architecture_id);
-
-
---
--- Name: binary_acl_map_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY binary_acl_map
-    ADD CONSTRAINT binary_acl_map_pkey PRIMARY KEY (id);
-
-
---
--- Name: binary_acl_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY binary_acl
-    ADD CONSTRAINT binary_acl_pkey PRIMARY KEY (id);
-
-
---
--- Name: build_queue_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY build_queue
-    ADD CONSTRAINT build_queue_pkey PRIMARY KEY (id);
-
-
---
--- Name: build_queue_policy_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY build_queue_policy_files
-    ADD CONSTRAINT build_queue_policy_files_pkey PRIMARY KEY (build_queue_id, file_id);
-
-
---
--- Name: build_queue_queue_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY build_queue
-    ADD CONSTRAINT build_queue_queue_name_key UNIQUE (queue_name);
-
-
---
--- Name: changelogs_text_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changelogs_text
-    ADD CONSTRAINT changelogs_text_pkey PRIMARY KEY (id);
-
-
---
--- Name: changes_pending_binaries_package_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_package_key UNIQUE (package, version, architecture_id);
-
-
---
--- Name: changes_pending_binaries_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_pkey PRIMARY KEY (id);
-
-
---
--- Name: changes_pending_files_filename_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_files
-    ADD CONSTRAINT changes_pending_files_filename_key UNIQUE (filename);
-
-
---
--- Name: changes_pending_files_map_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_files_map
-    ADD CONSTRAINT changes_pending_files_map_pkey PRIMARY KEY (file_id, change_id);
-
-
---
--- Name: changes_pending_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_files
-    ADD CONSTRAINT changes_pending_files_pkey PRIMARY KEY (id);
-
-
---
--- Name: changes_pending_source_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_source_files
-    ADD CONSTRAINT changes_pending_source_files_pkey PRIMARY KEY (pending_source_id, pending_file_id);
-
-
---
--- Name: changes_pending_source_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pending_source
-    ADD CONSTRAINT changes_pending_source_pkey PRIMARY KEY (id);
-
-
---
--- Name: changes_pool_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes_pool_files
-    ADD CONSTRAINT changes_pool_files_pkey PRIMARY KEY (changeid, fileid);
-
-
---
--- Name: component_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY component
-    ADD CONSTRAINT component_pkey PRIMARY KEY (id);
-
-
---
--- Name: config_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY config
-    ADD CONSTRAINT config_name_key UNIQUE (name);
-
-
---
--- Name: config_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY config
-    ADD CONSTRAINT config_pkey PRIMARY KEY (id);
-
-
---
--- Name: dsc_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY dsc_files
-    ADD CONSTRAINT dsc_files_pkey PRIMARY KEY (id);
-
-
---
--- Name: external_overrides_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY external_overrides
-    ADD CONSTRAINT external_overrides_pkey PRIMARY KEY (suite, component, package, key);
-
-
---
--- Name: extra_src_references_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY extra_src_references
-    ADD CONSTRAINT extra_src_references_pkey PRIMARY KEY (bin_id, src_id);
-
-
---
--- Name: files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY files
-    ADD CONSTRAINT files_pkey PRIMARY KEY (id);
-
-
---
--- Name: fingerprint_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY fingerprint
-    ADD CONSTRAINT fingerprint_pkey PRIMARY KEY (id);
-
-
---
--- Name: keyring_acl_map_keyring_id_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY keyring_acl_map
-    ADD CONSTRAINT keyring_acl_map_keyring_id_key UNIQUE (keyring_id, architecture_id);
-
-
---
--- Name: keyring_acl_map_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY keyring_acl_map
-    ADD CONSTRAINT keyring_acl_map_pkey PRIMARY KEY (id);
-
-
---
--- Name: keyrings_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY keyrings
-    ADD CONSTRAINT keyrings_name_key UNIQUE (name);
-
-
---
--- Name: keyrings_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY keyrings
-    ADD CONSTRAINT keyrings_pkey PRIMARY KEY (id);
-
-
---
--- Name: known_changes_changesname_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes
-    ADD CONSTRAINT known_changes_changesname_key UNIQUE (changesname);
-
-
---
--- Name: known_changes_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY changes
-    ADD CONSTRAINT known_changes_pkey PRIMARY KEY (id);
-
-
---
--- Name: location_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY location
-    ADD CONSTRAINT location_pkey PRIMARY KEY (id);
-
-
---
--- Name: maintainer_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY maintainer
-    ADD CONSTRAINT maintainer_pkey PRIMARY KEY (id);
-
-
---
--- Name: metadata_keys_key_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY metadata_keys
-    ADD CONSTRAINT metadata_keys_key_key UNIQUE (key);
-
-
---
--- Name: metadata_keys_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY metadata_keys
-    ADD CONSTRAINT metadata_keys_pkey PRIMARY KEY (key_id);
-
-
---
--- Name: new_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY new_comments
-    ADD CONSTRAINT new_comments_pkey PRIMARY KEY (id);
-
-
---
--- Name: override_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY override
-    ADD CONSTRAINT override_pkey PRIMARY KEY (suite, component, package, type);
-
-
---
--- Name: override_type_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY override_type
-    ADD CONSTRAINT override_type_pkey PRIMARY KEY (id);
-
-
---
--- Name: policy_queue_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY policy_queue
-    ADD CONSTRAINT policy_queue_pkey PRIMARY KEY (id);
-
-
---
--- Name: policy_queue_queue_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY policy_queue
-    ADD CONSTRAINT policy_queue_queue_name_key UNIQUE (queue_name);
-
-
---
--- Name: priority_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY priority
-    ADD CONSTRAINT priority_pkey PRIMARY KEY (id);
-
-
---
--- Name: queue_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY build_queue_files
-    ADD CONSTRAINT queue_files_pkey PRIMARY KEY (id);
-
-
---
--- Name: section_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY section
-    ADD CONSTRAINT section_pkey PRIMARY KEY (id);
-
-
---
--- Name: source_acl_access_level_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY source_acl
-    ADD CONSTRAINT source_acl_access_level_key UNIQUE (access_level);
-
-
---
--- Name: source_acl_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY source_acl
-    ADD CONSTRAINT source_acl_pkey PRIMARY KEY (id);
-
-
---
--- Name: source_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY source_metadata
-    ADD CONSTRAINT source_metadata_pkey PRIMARY KEY (src_id, key_id);
-
-
---
--- Name: source_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY source
-    ADD CONSTRAINT source_pkey PRIMARY KEY (id);
-
-
---
--- Name: src_associations_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY src_associations
-    ADD CONSTRAINT src_associations_pkey PRIMARY KEY (id);
-
-
---
--- Name: src_contents_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY src_contents
-    ADD CONSTRAINT src_contents_pkey PRIMARY KEY (file, source_id);
-
-
---
--- Name: src_format_format_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY src_format
-    ADD CONSTRAINT src_format_format_name_key UNIQUE (format_name);
-
-
---
--- Name: src_format_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY src_format
-    ADD CONSTRAINT src_format_pkey PRIMARY KEY (id);
-
-
---
--- Name: src_uploaders_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY src_uploaders
-    ADD CONSTRAINT src_uploaders_pkey PRIMARY KEY (id);
-
-
---
--- Name: src_uploaders_source_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY src_uploaders
-    ADD CONSTRAINT src_uploaders_source_key UNIQUE (source, maintainer);
-
-
---
--- Name: suite_architectures_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY suite_architectures
-    ADD CONSTRAINT suite_architectures_pkey PRIMARY KEY (suite, architecture);
-
-
---
--- Name: suite_name_unique; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY suite
-    ADD CONSTRAINT suite_name_unique UNIQUE (suite_name);
-
-
---
--- Name: suite_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY suite
-    ADD CONSTRAINT suite_pkey PRIMARY KEY (id);
-
-
---
--- Name: suite_queue_copy_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY suite_build_queue_copy
-    ADD CONSTRAINT suite_queue_copy_pkey PRIMARY KEY (suite, build_queue_id);
-
-
---
--- Name: suite_src_formats_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY suite_src_formats
-    ADD CONSTRAINT suite_src_formats_pkey PRIMARY KEY (suite, src_format);
-
-
---
--- Name: suite_src_formats_suite_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY suite_src_formats
-    ADD CONSTRAINT suite_src_formats_suite_key UNIQUE (suite, src_format);
-
-
---
--- Name: uid_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY uid
-    ADD CONSTRAINT uid_pkey PRIMARY KEY (id);
-
-
---
--- Name: upload_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY upload_blocks
-    ADD CONSTRAINT upload_blocks_pkey PRIMARY KEY (id);
-
-
---
--- Name: version_check_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
---
-
-ALTER TABLE ONLY version_check
-    ADD CONSTRAINT version_check_pkey PRIMARY KEY (suite, "check", reference);
-
-
---
--- Name: architecture_arch_string_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX architecture_arch_string_key ON architecture USING btree (arch_string);
-
-
---
--- Name: archive_name_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX archive_name_key ON archive USING btree (name);
-
-
---
--- Name: bin_associations_bin; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX bin_associations_bin ON bin_associations USING btree (bin);
-
-
---
--- Name: bin_associations_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX bin_associations_suite_key ON bin_associations USING btree (suite, bin);
-
-
---
--- Name: binaries_architecture_idx; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX binaries_architecture_idx ON binaries USING btree (architecture);
-
-
---
--- Name: binaries_by_package; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX binaries_by_package ON binaries USING btree (id, package);
-
-
---
--- Name: binaries_file_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX binaries_file_key ON binaries USING btree (file);
-
-
---
--- Name: binaries_files; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX binaries_files ON binaries USING btree (file);
-
-
---
--- Name: binaries_fingerprint; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX binaries_fingerprint ON binaries USING btree (sig_fpr);
-
-
---
--- Name: binaries_id; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX binaries_id ON binaries USING btree (id);
-
-
---
--- Name: binaries_maintainer; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX binaries_maintainer ON binaries USING btree (maintainer);
-
-
---
--- Name: binaries_package_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX binaries_package_key ON binaries USING btree (package, version, architecture);
-
-
---
--- Name: changesapproved_for; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changesapproved_for ON changes USING btree (approved_for);
-
-
---
--- Name: changesdistribution_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changesdistribution_ind ON changes USING btree (distribution);
-
-
---
--- Name: changesin_queue; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changesin_queue ON changes USING btree (in_queue);
-
-
---
--- Name: changesin_queue_approved_for; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changesin_queue_approved_for ON changes USING btree (in_queue, approved_for);
-
-
---
--- Name: changesname_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changesname_ind ON changes USING btree (changesname);
-
-
---
--- Name: changessource_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changessource_ind ON changes USING btree (source);
-
-
---
--- Name: changestimestamp_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changestimestamp_ind ON changes USING btree (seen);
-
-
---
--- Name: changesurgency_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX changesurgency_ind ON changes USING btree (urgency);
-
-
---
--- Name: component_name_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX component_name_key ON component USING btree (name);
-
-
---
--- Name: dsc_files_file; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX dsc_files_file ON dsc_files USING btree (file);
-
-
---
--- Name: dsc_files_source_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX dsc_files_source_key ON dsc_files USING btree (source, file);
-
-
---
--- Name: files_filename_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX files_filename_key ON files USING btree (filename, location);
-
-
---
--- Name: files_last_used; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX files_last_used ON files USING btree (last_used);
-
-
---
--- Name: fingerprint_fingerprint_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX fingerprint_fingerprint_key ON fingerprint USING btree (fingerprint);
-
-
---
--- Name: ind_bin_contents_binary; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX ind_bin_contents_binary ON bin_contents USING btree (binary_id);
-
-
---
--- Name: jjt; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX jjt ON files USING btree (id);
-
-
---
--- Name: jjt2; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX jjt2 ON files USING btree (location);
-
-
---
--- Name: jjt3; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX jjt3 ON files USING btree (id, location);
-
-
---
--- Name: jjt4; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX jjt4 ON binaries USING btree (source);
-
-
---
--- Name: jjt5; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX jjt5 ON binaries USING btree (id, source);
-
-
---
--- Name: jjt_override_type_idx; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX jjt_override_type_idx ON override USING btree (type);
-
-
---
--- Name: maintainer_name_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX maintainer_name_key ON maintainer USING btree (name);
-
-
---
--- Name: override_by_package; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX override_by_package ON override USING btree (package);
-
-
---
--- Name: override_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX override_suite_key ON override USING btree (suite, component, package, type);
-
-
---
--- Name: override_type_type_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX override_type_type_key ON override_type USING btree (type);
-
-
---
--- Name: priority_level_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX priority_level_key ON priority USING btree (level);
-
-
---
--- Name: priority_priority_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX priority_priority_key ON priority USING btree (priority);
-
-
---
--- Name: section_section_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX section_section_key ON section USING btree (section);
-
-
---
--- Name: source_file_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX source_file_key ON source USING btree (file);
-
-
---
--- Name: source_fingerprint; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX source_fingerprint ON source USING btree (sig_fpr);
-
-
---
--- Name: source_maintainer; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX source_maintainer ON source USING btree (maintainer);
-
-
---
--- Name: source_source_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX source_source_key ON source USING btree (source, version);
-
-
---
--- Name: src_associations_source; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX src_associations_source ON src_associations USING btree (source);
-
-
---
--- Name: src_associations_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX src_associations_suite_key ON src_associations USING btree (suite, source);
-
-
---
--- Name: src_contents_source_id_idx; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX src_contents_source_id_idx ON src_contents USING btree (source_id);
-
-
---
--- Name: suite_architectures_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX suite_architectures_suite_key ON suite_architectures USING btree (suite, architecture);
-
-
---
--- Name: suite_hash; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE INDEX suite_hash ON suite USING hash (suite_name);
-
-
---
--- Name: uid_uid_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
---
-
-CREATE UNIQUE INDEX uid_uid_key ON uid USING btree (uid);
-
-
---
--- Name: modified_architecture; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_architecture BEFORE UPDATE ON architecture FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_archive; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_archive BEFORE UPDATE ON archive FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_bin_associations; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_bin_associations BEFORE UPDATE ON bin_associations FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_bin_contents; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_bin_contents BEFORE UPDATE ON bin_contents FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_binaries; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_binaries BEFORE UPDATE ON binaries FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_binary_acl; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_binary_acl BEFORE UPDATE ON binary_acl FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_binary_acl_map; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_binary_acl_map BEFORE UPDATE ON binary_acl_map FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_build_queue; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_build_queue BEFORE UPDATE ON build_queue FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_build_queue_files; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_build_queue_files BEFORE UPDATE ON build_queue_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes BEFORE UPDATE ON changes FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes_pending_binaries; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes_pending_binaries BEFORE UPDATE ON changes_pending_binaries FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes_pending_files; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes_pending_files BEFORE UPDATE ON changes_pending_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes_pending_files_map; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes_pending_files_map BEFORE UPDATE ON changes_pending_files_map FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes_pending_source; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes_pending_source BEFORE UPDATE ON changes_pending_source FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes_pending_source_files; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes_pending_source_files BEFORE UPDATE ON changes_pending_source_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_changes_pool_files; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_changes_pool_files BEFORE UPDATE ON changes_pool_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_component; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_component BEFORE UPDATE ON component FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_config; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_config BEFORE UPDATE ON config FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_dsc_files; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_dsc_files BEFORE UPDATE ON dsc_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_files; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_files BEFORE UPDATE ON files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_fingerprint; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_fingerprint BEFORE UPDATE ON fingerprint FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_keyring_acl_map; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_keyring_acl_map BEFORE UPDATE ON keyring_acl_map FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_keyrings; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_keyrings BEFORE UPDATE ON keyrings FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_location; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_location BEFORE UPDATE ON location FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_maintainer; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_maintainer BEFORE UPDATE ON maintainer FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_new_comments; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_new_comments BEFORE UPDATE ON new_comments FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_override; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_override BEFORE UPDATE ON override FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_override_type; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_override_type BEFORE UPDATE ON override_type FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_policy_queue; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_policy_queue BEFORE UPDATE ON policy_queue FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_priority; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_priority BEFORE UPDATE ON priority FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_section; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_section BEFORE UPDATE ON section FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_source; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_source BEFORE UPDATE ON source FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_source_acl; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_source_acl BEFORE UPDATE ON source_acl FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_src_associations; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_src_associations BEFORE UPDATE ON src_associations FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_src_contents; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_src_contents BEFORE UPDATE ON src_contents FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_src_format; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_src_format BEFORE UPDATE ON src_format FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_src_uploaders; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_src_uploaders BEFORE UPDATE ON src_uploaders FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_suite; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_suite BEFORE UPDATE ON suite FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_suite_architectures; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_suite_architectures BEFORE UPDATE ON suite_architectures FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_suite_build_queue_copy; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_suite_build_queue_copy BEFORE UPDATE ON suite_build_queue_copy FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_suite_src_formats; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_suite_src_formats BEFORE UPDATE ON suite_src_formats FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_uid; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_uid BEFORE UPDATE ON uid FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: modified_upload_blocks; Type: TRIGGER; Schema: public; Owner: dak
---
-
-CREATE TRIGGER modified_upload_blocks BEFORE UPDATE ON upload_blocks FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
-
-
---
--- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY fingerprint
-    ADD CONSTRAINT "$1" FOREIGN KEY (keyring) REFERENCES keyrings(id);
-
-
---
--- Name: bin_associations_bin; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY bin_associations
-    ADD CONSTRAINT bin_associations_bin FOREIGN KEY (bin) REFERENCES binaries(id) MATCH FULL;
-
-
---
--- Name: bin_associations_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY bin_associations
-    ADD CONSTRAINT bin_associations_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
-
-
---
--- Name: bin_contents_bin_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY bin_contents
-    ADD CONSTRAINT bin_contents_bin_fkey FOREIGN KEY (binary_id) REFERENCES binaries(id) ON DELETE CASCADE;
-
-
---
--- Name: binaries_architecture; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries
-    ADD CONSTRAINT binaries_architecture FOREIGN KEY (architecture) REFERENCES architecture(id) MATCH FULL;
-
-
---
--- Name: binaries_file; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries
-    ADD CONSTRAINT binaries_file FOREIGN KEY (file) REFERENCES files(id) MATCH FULL;
-
-
---
--- Name: binaries_maintainer; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries
-    ADD CONSTRAINT binaries_maintainer FOREIGN KEY (maintainer) REFERENCES maintainer(id) MATCH FULL;
-
-
---
--- Name: binaries_metadata_bin_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries_metadata
-    ADD CONSTRAINT binaries_metadata_bin_id_fkey FOREIGN KEY (bin_id) REFERENCES binaries(id) ON DELETE CASCADE;
-
-
---
--- Name: binaries_metadata_key_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries_metadata
-    ADD CONSTRAINT binaries_metadata_key_id_fkey FOREIGN KEY (key_id) REFERENCES metadata_keys(key_id);
-
-
---
--- Name: binaries_sig_fpr; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries
-    ADD CONSTRAINT binaries_sig_fpr FOREIGN KEY (sig_fpr) REFERENCES fingerprint(id) MATCH FULL;
-
-
---
--- Name: binaries_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binaries
-    ADD CONSTRAINT binaries_source FOREIGN KEY (source) REFERENCES source(id) MATCH FULL;
-
-
---
--- Name: binary_acl_map_architecture_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binary_acl_map
-    ADD CONSTRAINT binary_acl_map_architecture_id_fkey FOREIGN KEY (architecture_id) REFERENCES architecture(id);
-
-
---
--- Name: binary_acl_map_fingerprint_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY binary_acl_map
-    ADD CONSTRAINT binary_acl_map_fingerprint_id_fkey FOREIGN KEY (fingerprint_id) REFERENCES fingerprint(id);
-
-
---
--- Name: build_queue_files_build_queue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY build_queue_files
-    ADD CONSTRAINT build_queue_files_build_queue_id_fkey FOREIGN KEY (build_queue_id) REFERENCES build_queue(id) ON DELETE CASCADE;
-
-
---
--- Name: build_queue_policy_files_build_queue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY build_queue_policy_files
-    ADD CONSTRAINT build_queue_policy_files_build_queue_id_fkey FOREIGN KEY (build_queue_id) REFERENCES build_queue(id) ON DELETE CASCADE;
-
-
---
--- Name: build_queue_policy_files_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY build_queue_policy_files
-    ADD CONSTRAINT build_queue_policy_files_file_id_fkey FOREIGN KEY (file_id) REFERENCES changes_pending_files(id) ON DELETE CASCADE;
-
-
---
--- Name: changes_pending_binaries_architecture_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_architecture_id_fkey FOREIGN KEY (architecture_id) REFERENCES architecture(id);
-
-
---
--- Name: changes_pending_binaries_change_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_change_id_fkey FOREIGN KEY (change_id) REFERENCES changes(id);
-
-
---
--- Name: changes_pending_binaries_pending_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_pending_file_id_fkey FOREIGN KEY (pending_file_id) REFERENCES changes_pending_files(id);
-
-
---
--- Name: changes_pending_binaries_pending_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_pending_source_id_fkey FOREIGN KEY (pending_source_id) REFERENCES changes_pending_source(id);
-
-
---
--- Name: changes_pending_binaries_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_binaries
-    ADD CONSTRAINT changes_pending_binaries_source_id_fkey FOREIGN KEY (source_id) REFERENCES source(id);
-
-
---
--- Name: changes_pending_files_map_change_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_files_map
-    ADD CONSTRAINT changes_pending_files_map_change_id_fkey FOREIGN KEY (change_id) REFERENCES changes(id);
-
-
---
--- Name: changes_pending_files_map_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_files_map
-    ADD CONSTRAINT changes_pending_files_map_file_id_fkey FOREIGN KEY (file_id) REFERENCES changes_pending_files(id);
-
-
---
--- Name: changes_pending_source_change_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_source
-    ADD CONSTRAINT changes_pending_source_change_id_fkey FOREIGN KEY (change_id) REFERENCES changes(id);
-
-
---
--- Name: changes_pending_source_changedby_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_source
-    ADD CONSTRAINT changes_pending_source_changedby_id_fkey FOREIGN KEY (changedby_id) REFERENCES maintainer(id);
-
-
---
--- Name: changes_pending_source_files_pending_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_source_files
-    ADD CONSTRAINT changes_pending_source_files_pending_file_id_fkey FOREIGN KEY (pending_file_id) REFERENCES changes_pending_files(id);
-
-
---
--- Name: changes_pending_source_files_pending_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_source_files
-    ADD CONSTRAINT changes_pending_source_files_pending_source_id_fkey FOREIGN KEY (pending_source_id) REFERENCES changes_pending_source(id);
-
-
---
--- Name: changes_pending_source_maintainer_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_source
-    ADD CONSTRAINT changes_pending_source_maintainer_id_fkey FOREIGN KEY (maintainer_id) REFERENCES maintainer(id);
-
-
---
--- Name: changes_pending_source_sig_fpr_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pending_source
-    ADD CONSTRAINT changes_pending_source_sig_fpr_fkey FOREIGN KEY (sig_fpr) REFERENCES fingerprint(id);
-
-
---
--- Name: changes_pool_files_changeid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pool_files
-    ADD CONSTRAINT changes_pool_files_changeid_fkey FOREIGN KEY (changeid) REFERENCES changes(id) ON DELETE CASCADE;
-
-
---
--- Name: changes_pool_files_fileid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes_pool_files
-    ADD CONSTRAINT changes_pool_files_fileid_fkey FOREIGN KEY (fileid) REFERENCES files(id) ON DELETE RESTRICT;
-
-
---
--- Name: dsc_files_file; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY dsc_files
-    ADD CONSTRAINT dsc_files_file FOREIGN KEY (file) REFERENCES files(id) MATCH FULL;
-
-
---
--- Name: dsc_files_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY dsc_files
-    ADD CONSTRAINT dsc_files_source FOREIGN KEY (source) REFERENCES source(id) MATCH FULL;
-
-
---
--- Name: external_overrides_component_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY external_overrides
-    ADD CONSTRAINT external_overrides_component_fkey FOREIGN KEY (component) REFERENCES component(id);
-
-
---
--- Name: external_overrides_suite_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY external_overrides
-    ADD CONSTRAINT external_overrides_suite_fkey FOREIGN KEY (suite) REFERENCES suite(id);
-
-
---
--- Name: extra_src_references_bin_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY extra_src_references
-    ADD CONSTRAINT extra_src_references_bin_id_fkey FOREIGN KEY (bin_id) REFERENCES binaries(id) ON DELETE CASCADE;
-
-
---
--- Name: extra_src_references_src_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY extra_src_references
-    ADD CONSTRAINT extra_src_references_src_id_fkey FOREIGN KEY (src_id) REFERENCES source(id) ON DELETE RESTRICT;
-
-
---
--- Name: files_location; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY files
-    ADD CONSTRAINT files_location FOREIGN KEY (location) REFERENCES location(id) MATCH FULL;
-
-
---
--- Name: fingerprint_binary_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY fingerprint
-    ADD CONSTRAINT fingerprint_binary_acl_id_fkey FOREIGN KEY (binary_acl_id) REFERENCES binary_acl(id);
-
-
---
--- Name: fingerprint_source_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY fingerprint
-    ADD CONSTRAINT fingerprint_source_acl_id_fkey FOREIGN KEY (source_acl_id) REFERENCES source_acl(id);
-
-
---
--- Name: fingerprint_uid; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY fingerprint
-    ADD CONSTRAINT fingerprint_uid FOREIGN KEY (uid) REFERENCES uid(id) MATCH FULL;
-
-
---
--- Name: keyring_acl_map_architecture_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY keyring_acl_map
-    ADD CONSTRAINT keyring_acl_map_architecture_id_fkey FOREIGN KEY (architecture_id) REFERENCES architecture(id);
-
-
---
--- Name: keyring_acl_map_keyring_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY keyring_acl_map
-    ADD CONSTRAINT keyring_acl_map_keyring_id_fkey FOREIGN KEY (keyring_id) REFERENCES keyrings(id);
-
-
---
--- Name: keyrings_default_binary_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY keyrings
-    ADD CONSTRAINT keyrings_default_binary_acl_id_fkey FOREIGN KEY (default_binary_acl_id) REFERENCES binary_acl(id);
-
-
---
--- Name: keyrings_default_source_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY keyrings
-    ADD CONSTRAINT keyrings_default_source_acl_id_fkey FOREIGN KEY (default_source_acl_id) REFERENCES source_acl(id);
-
-
---
--- Name: known_changes_approved_for_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes
-    ADD CONSTRAINT known_changes_approved_for_fkey FOREIGN KEY (in_queue) REFERENCES policy_queue(id) ON DELETE RESTRICT;
-
-
---
--- Name: known_changes_in_queue_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY changes
-    ADD CONSTRAINT known_changes_in_queue_fkey FOREIGN KEY (in_queue) REFERENCES policy_queue(id) ON DELETE RESTRICT;
-
-
---
--- Name: location_archive_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY location
-    ADD CONSTRAINT location_archive_fkey FOREIGN KEY (archive) REFERENCES archive(id);
-
-
---
--- Name: location_component_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY location
-    ADD CONSTRAINT location_component_fkey FOREIGN KEY (component) REFERENCES component(id);
-
-
---
--- Name: override_component; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY override
-    ADD CONSTRAINT override_component FOREIGN KEY (component) REFERENCES component(id) MATCH FULL;
-
-
---
--- Name: override_priority; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY override
-    ADD CONSTRAINT override_priority FOREIGN KEY (priority) REFERENCES priority(id) MATCH FULL;
-
-
---
--- Name: override_section; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY override
-    ADD CONSTRAINT override_section FOREIGN KEY (section) REFERENCES section(id) MATCH FULL;
-
-
---
--- Name: override_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY override
-    ADD CONSTRAINT override_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
-
-
---
--- Name: override_type; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY override
-    ADD CONSTRAINT override_type FOREIGN KEY (type) REFERENCES override_type(id) MATCH FULL;
-
-
---
--- Name: queue_files_fileid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY build_queue_files
-    ADD CONSTRAINT queue_files_fileid_fkey FOREIGN KEY (fileid) REFERENCES files(id) ON DELETE CASCADE;
-
-
---
--- Name: source_changedby; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY source
-    ADD CONSTRAINT source_changedby FOREIGN KEY (changedby) REFERENCES maintainer(id) MATCH FULL;
-
-
---
--- Name: source_file; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY source
-    ADD CONSTRAINT source_file FOREIGN KEY (file) REFERENCES files(id) MATCH FULL;
-
-
---
--- Name: source_maintainer; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY source
-    ADD CONSTRAINT source_maintainer FOREIGN KEY (maintainer) REFERENCES maintainer(id) MATCH FULL;
-
-
---
--- Name: source_metadata_key_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY source_metadata
-    ADD CONSTRAINT source_metadata_key_id_fkey FOREIGN KEY (key_id) REFERENCES metadata_keys(key_id);
-
-
---
--- Name: source_metadata_src_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY source_metadata
-    ADD CONSTRAINT source_metadata_src_id_fkey FOREIGN KEY (src_id) REFERENCES source(id) ON DELETE CASCADE;
-
-
---
--- Name: source_sig_fpr; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY source
-    ADD CONSTRAINT source_sig_fpr FOREIGN KEY (sig_fpr) REFERENCES fingerprint(id) MATCH FULL;
-
-
---
--- Name: src_associations_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY src_associations
-    ADD CONSTRAINT src_associations_source FOREIGN KEY (source) REFERENCES source(id) MATCH FULL;
-
-
---
--- Name: src_associations_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY src_associations
-    ADD CONSTRAINT src_associations_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
-
-
---
--- Name: src_contents_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY src_contents
-    ADD CONSTRAINT src_contents_source_id_fkey FOREIGN KEY (source_id) REFERENCES source(id) ON DELETE CASCADE;
-
-
---
--- Name: src_format_key; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite_src_formats
-    ADD CONSTRAINT src_format_key FOREIGN KEY (src_format) REFERENCES src_format(id);
-
-
---
--- Name: src_uploaders_maintainer; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY src_uploaders
-    ADD CONSTRAINT src_uploaders_maintainer FOREIGN KEY (maintainer) REFERENCES maintainer(id) ON DELETE CASCADE;
-
-
---
--- Name: src_uploaders_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY src_uploaders
-    ADD CONSTRAINT src_uploaders_source FOREIGN KEY (source) REFERENCES source(id) ON DELETE CASCADE;
-
-
---
--- Name: suite_architectures_architectur; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite_architectures
-    ADD CONSTRAINT suite_architectures_architectur FOREIGN KEY (architecture) REFERENCES architecture(id) MATCH FULL;
-
-
---
--- Name: suite_architectures_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite_architectures
-    ADD CONSTRAINT suite_architectures_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
-
-
---
--- Name: suite_build_queue_copy_build_queue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite_build_queue_copy
-    ADD CONSTRAINT suite_build_queue_copy_build_queue_id_fkey FOREIGN KEY (build_queue_id) REFERENCES build_queue(id) ON DELETE RESTRICT;
-
-
---
--- Name: suite_key; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite_src_formats
-    ADD CONSTRAINT suite_key FOREIGN KEY (suite) REFERENCES suite(id);
-
-
---
--- Name: suite_policy_queue_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite
-    ADD CONSTRAINT suite_policy_queue_fkey FOREIGN KEY (policy_queue_id) REFERENCES policy_queue(id) ON DELETE RESTRICT;
-
-
---
--- Name: suite_queue_copy_suite_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY suite_build_queue_copy
-    ADD CONSTRAINT suite_queue_copy_suite_fkey FOREIGN KEY (suite) REFERENCES suite(id);
-
-
---
--- Name: upload_blocks_fingerprint_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY upload_blocks
-    ADD CONSTRAINT upload_blocks_fingerprint_id_fkey FOREIGN KEY (fingerprint_id) REFERENCES fingerprint(id);
-
-
---
--- Name: upload_blocks_uid_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY upload_blocks
-    ADD CONSTRAINT upload_blocks_uid_id_fkey FOREIGN KEY (uid_id) REFERENCES uid(id);
-
-
---
--- Name: version_check_reference_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY version_check
-    ADD CONSTRAINT version_check_reference_fkey FOREIGN KEY (reference) REFERENCES suite(id);
-
-
---
--- Name: version_check_suite_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
---
-
-ALTER TABLE ONLY version_check
-    ADD CONSTRAINT version_check_suite_fkey FOREIGN KEY (suite) REFERENCES suite(id);
-
-
---
--- Name: public; Type: ACL; Schema: -; Owner: postgres
---
-
-REVOKE ALL ON SCHEMA public FROM PUBLIC;
-REVOKE ALL ON SCHEMA public FROM postgres;
-GRANT ALL ON SCHEMA public TO postgres;
-GRANT ALL ON SCHEMA public TO PUBLIC;
-
-
---
--- Name: bin_associations_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE bin_associations_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE bin_associations_id_seq FROM dak;
-GRANT ALL ON SEQUENCE bin_associations_id_seq TO dak;
-GRANT SELECT ON SEQUENCE bin_associations_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE bin_associations_id_seq TO ftpmaster;
-
-
---
--- Name: bin_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE bin_associations FROM PUBLIC;
-REVOKE ALL ON TABLE bin_associations FROM dak;
-GRANT ALL ON TABLE bin_associations TO dak;
-GRANT SELECT ON TABLE bin_associations TO PUBLIC;
-GRANT ALL ON TABLE bin_associations TO ftpmaster;
-GRANT DELETE ON TABLE bin_associations TO ftpteam;
-
-
---
--- Name: binaries_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE binaries_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE binaries_id_seq FROM dak;
-GRANT ALL ON SEQUENCE binaries_id_seq TO dak;
-GRANT SELECT ON SEQUENCE binaries_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE binaries_id_seq TO ftpmaster;
-
-
---
--- Name: binaries; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE binaries FROM PUBLIC;
-REVOKE ALL ON TABLE binaries FROM dak;
-GRANT ALL ON TABLE binaries TO dak;
-GRANT SELECT ON TABLE binaries TO PUBLIC;
-GRANT ALL ON TABLE binaries TO ftpmaster;
-
-
---
--- Name: bin_associations_binaries; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE bin_associations_binaries FROM PUBLIC;
-REVOKE ALL ON TABLE bin_associations_binaries FROM dak;
-GRANT ALL ON TABLE bin_associations_binaries TO dak;
-GRANT SELECT ON TABLE bin_associations_binaries TO ftpmaster;
-GRANT SELECT ON TABLE bin_associations_binaries TO PUBLIC;
-
-
---
--- Name: source_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE source_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE source_id_seq FROM dak;
-GRANT ALL ON SEQUENCE source_id_seq TO dak;
-GRANT SELECT ON SEQUENCE source_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE source_id_seq TO ftpmaster;
-
-
---
--- Name: source; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE source FROM PUBLIC;
-REVOKE ALL ON TABLE source FROM dak;
-GRANT ALL ON TABLE source TO dak;
-GRANT SELECT ON TABLE source TO PUBLIC;
-GRANT ALL ON TABLE source TO ftpmaster;
-
-
---
--- Name: src_associations_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE src_associations_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE src_associations_id_seq FROM dak;
-GRANT ALL ON SEQUENCE src_associations_id_seq TO dak;
-GRANT SELECT ON SEQUENCE src_associations_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE src_associations_id_seq TO ftpmaster;
-
-
---
--- Name: src_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE src_associations FROM PUBLIC;
-REVOKE ALL ON TABLE src_associations FROM dak;
-GRANT ALL ON TABLE src_associations TO dak;
-GRANT SELECT ON TABLE src_associations TO PUBLIC;
-GRANT ALL ON TABLE src_associations TO ftpmaster;
-GRANT DELETE ON TABLE src_associations TO ftpteam;
-
-
---
--- Name: src_associations_bin; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE src_associations_bin FROM PUBLIC;
-REVOKE ALL ON TABLE src_associations_bin FROM dak;
-GRANT ALL ON TABLE src_associations_bin TO dak;
-GRANT SELECT ON TABLE src_associations_bin TO ftpmaster;
-GRANT SELECT ON TABLE src_associations_bin TO PUBLIC;
-
-
---
--- Name: almost_obsolete_all_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE almost_obsolete_all_associations FROM PUBLIC;
-REVOKE ALL ON TABLE almost_obsolete_all_associations FROM dak;
-GRANT ALL ON TABLE almost_obsolete_all_associations TO dak;
-GRANT SELECT ON TABLE almost_obsolete_all_associations TO ftpmaster;
-GRANT SELECT ON TABLE almost_obsolete_all_associations TO PUBLIC;
-
-
---
--- Name: any_associations_source; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE any_associations_source FROM PUBLIC;
-REVOKE ALL ON TABLE any_associations_source FROM dak;
-GRANT ALL ON TABLE any_associations_source TO dak;
-GRANT SELECT ON TABLE any_associations_source TO ftpmaster;
-GRANT SELECT ON TABLE any_associations_source TO PUBLIC;
-
-
---
--- Name: src_associations_src; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE src_associations_src FROM PUBLIC;
-REVOKE ALL ON TABLE src_associations_src FROM dak;
-GRANT ALL ON TABLE src_associations_src TO dak;
-GRANT SELECT ON TABLE src_associations_src TO ftpmaster;
-GRANT SELECT ON TABLE src_associations_src TO PUBLIC;
-
-
---
--- Name: almost_obsolete_src_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE almost_obsolete_src_associations FROM PUBLIC;
-REVOKE ALL ON TABLE almost_obsolete_src_associations FROM dak;
-GRANT ALL ON TABLE almost_obsolete_src_associations TO dak;
-GRANT SELECT ON TABLE almost_obsolete_src_associations TO ftpmaster;
-GRANT SELECT ON TABLE almost_obsolete_src_associations TO PUBLIC;
-
-
---
--- Name: architecture_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE architecture_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE architecture_id_seq FROM dak;
-GRANT ALL ON SEQUENCE architecture_id_seq TO dak;
-GRANT SELECT ON SEQUENCE architecture_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE architecture_id_seq TO ftpmaster;
-
-
---
--- Name: architecture; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE architecture FROM PUBLIC;
-REVOKE ALL ON TABLE architecture FROM dak;
-GRANT ALL ON TABLE architecture TO dak;
-GRANT SELECT ON TABLE architecture TO PUBLIC;
-GRANT ALL ON TABLE architecture TO ftpmaster;
-
-
---
--- Name: archive_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE archive_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE archive_id_seq FROM dak;
-GRANT ALL ON SEQUENCE archive_id_seq TO dak;
-GRANT SELECT ON SEQUENCE archive_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE archive_id_seq TO ftpmaster;
-
-
---
--- Name: archive; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE archive FROM PUBLIC;
-REVOKE ALL ON TABLE archive FROM dak;
-GRANT ALL ON TABLE archive TO dak;
-GRANT SELECT ON TABLE archive TO PUBLIC;
-GRANT ALL ON TABLE archive TO ftpmaster;
-
-
---
--- Name: bin_contents; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE bin_contents FROM PUBLIC;
-REVOKE ALL ON TABLE bin_contents FROM dak;
-GRANT ALL ON TABLE bin_contents TO dak;
-GRANT SELECT ON TABLE bin_contents TO PUBLIC;
-GRANT ALL ON TABLE bin_contents TO ftpmaster;
-
-
---
--- Name: binaries_metadata; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE binaries_metadata FROM PUBLIC;
-REVOKE ALL ON TABLE binaries_metadata FROM dak;
-GRANT ALL ON TABLE binaries_metadata TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE binaries_metadata TO ftpmaster;
-GRANT SELECT ON TABLE binaries_metadata TO PUBLIC;
-
-
---
--- Name: suite_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE suite_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE suite_id_seq FROM dak;
-GRANT ALL ON SEQUENCE suite_id_seq TO dak;
-GRANT SELECT ON SEQUENCE suite_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE suite_id_seq TO ftpmaster;
-
-
---
--- Name: suite; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE suite FROM PUBLIC;
-REVOKE ALL ON TABLE suite FROM dak;
-GRANT ALL ON TABLE suite TO dak;
-GRANT SELECT ON TABLE suite TO PUBLIC;
-GRANT ALL ON TABLE suite TO ftpmaster;
-
-
---
--- Name: binaries_suite_arch; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE binaries_suite_arch FROM PUBLIC;
-REVOKE ALL ON TABLE binaries_suite_arch FROM dak;
-GRANT ALL ON TABLE binaries_suite_arch TO dak;
-GRANT SELECT ON TABLE binaries_suite_arch TO ftpmaster;
-GRANT SELECT ON TABLE binaries_suite_arch TO PUBLIC;
-
-
---
--- Name: binary_acl; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE binary_acl FROM PUBLIC;
-REVOKE ALL ON TABLE binary_acl FROM dak;
-GRANT ALL ON TABLE binary_acl TO dak;
-GRANT SELECT ON TABLE binary_acl TO PUBLIC;
-GRANT ALL ON TABLE binary_acl TO ftpmaster;
-
-
---
--- Name: binary_acl_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE binary_acl_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE binary_acl_id_seq FROM dak;
-GRANT ALL ON SEQUENCE binary_acl_id_seq TO dak;
-GRANT ALL ON SEQUENCE binary_acl_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE binary_acl_id_seq TO PUBLIC;
-
-
---
--- Name: binary_acl_map; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE binary_acl_map FROM PUBLIC;
-REVOKE ALL ON TABLE binary_acl_map FROM dak;
-GRANT ALL ON TABLE binary_acl_map TO dak;
-GRANT SELECT ON TABLE binary_acl_map TO PUBLIC;
-GRANT ALL ON TABLE binary_acl_map TO ftpmaster;
-
-
---
--- Name: binary_acl_map_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE binary_acl_map_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE binary_acl_map_id_seq FROM dak;
-GRANT ALL ON SEQUENCE binary_acl_map_id_seq TO dak;
-GRANT ALL ON SEQUENCE binary_acl_map_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE binary_acl_map_id_seq TO PUBLIC;
-
-
---
--- Name: files_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE files_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE files_id_seq FROM dak;
-GRANT ALL ON SEQUENCE files_id_seq TO dak;
-GRANT SELECT ON SEQUENCE files_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE files_id_seq TO ftpmaster;
-
-
---
--- Name: files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE files FROM PUBLIC;
-REVOKE ALL ON TABLE files FROM dak;
-GRANT ALL ON TABLE files TO dak;
-GRANT SELECT ON TABLE files TO PUBLIC;
-GRANT ALL ON TABLE files TO ftpmaster;
-
-
---
--- Name: location_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE location_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE location_id_seq FROM dak;
-GRANT ALL ON SEQUENCE location_id_seq TO dak;
-GRANT SELECT ON SEQUENCE location_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE location_id_seq TO ftpmaster;
-
-
---
--- Name: location; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE location FROM PUBLIC;
-REVOKE ALL ON TABLE location FROM dak;
-GRANT ALL ON TABLE location TO dak;
-GRANT SELECT ON TABLE location TO PUBLIC;
-GRANT ALL ON TABLE location TO ftpmaster;
-
-
---
--- Name: binfiles_suite_component_arch; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE binfiles_suite_component_arch FROM PUBLIC;
-REVOKE ALL ON TABLE binfiles_suite_component_arch FROM dak;
-GRANT ALL ON TABLE binfiles_suite_component_arch TO dak;
-GRANT SELECT ON TABLE binfiles_suite_component_arch TO ftpmaster;
-GRANT SELECT ON TABLE binfiles_suite_component_arch TO PUBLIC;
-
-
---
--- Name: build_queue; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE build_queue FROM PUBLIC;
-REVOKE ALL ON TABLE build_queue FROM dak;
-GRANT ALL ON TABLE build_queue TO dak;
-GRANT SELECT ON TABLE build_queue TO PUBLIC;
-GRANT ALL ON TABLE build_queue TO ftpmaster;
-
-
---
--- Name: build_queue_files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE build_queue_files FROM PUBLIC;
-REVOKE ALL ON TABLE build_queue_files FROM dak;
-GRANT ALL ON TABLE build_queue_files TO dak;
-GRANT SELECT ON TABLE build_queue_files TO PUBLIC;
-GRANT ALL ON TABLE build_queue_files TO ftpmaster;
-
-
---
--- Name: build_queue_files_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE build_queue_files_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE build_queue_files_id_seq FROM dak;
-GRANT ALL ON SEQUENCE build_queue_files_id_seq TO dak;
-GRANT ALL ON SEQUENCE build_queue_files_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE build_queue_files_id_seq TO PUBLIC;
-
-
---
--- Name: build_queue_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE build_queue_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE build_queue_id_seq FROM dak;
-GRANT ALL ON SEQUENCE build_queue_id_seq TO dak;
-GRANT ALL ON SEQUENCE build_queue_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE build_queue_id_seq TO PUBLIC;
-
-
---
--- Name: build_queue_policy_files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE build_queue_policy_files FROM PUBLIC;
-REVOKE ALL ON TABLE build_queue_policy_files FROM dak;
-GRANT ALL ON TABLE build_queue_policy_files TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE build_queue_policy_files TO ftpmaster;
-GRANT SELECT ON TABLE build_queue_policy_files TO PUBLIC;
-
-
---
--- Name: changelogs_text; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changelogs_text FROM PUBLIC;
-REVOKE ALL ON TABLE changelogs_text FROM dak;
-GRANT ALL ON TABLE changelogs_text TO dak;
-GRANT SELECT ON TABLE changelogs_text TO PUBLIC;
-GRANT ALL ON TABLE changelogs_text TO ftpmaster;
-
-
---
--- Name: changes; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes FROM PUBLIC;
-REVOKE ALL ON TABLE changes FROM dak;
-GRANT ALL ON TABLE changes TO dak;
-GRANT ALL ON TABLE changes TO ftpmaster;
-GRANT SELECT ON TABLE changes TO PUBLIC;
-GRANT DELETE,UPDATE ON TABLE changes TO ftpteam;
-
-
---
--- Name: changelogs; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changelogs FROM PUBLIC;
-REVOKE ALL ON TABLE changelogs FROM dak;
-GRANT ALL ON TABLE changelogs TO dak;
-GRANT SELECT ON TABLE changelogs TO PUBLIC;
-GRANT ALL ON TABLE changelogs TO ftpmaster;
-
-
---
--- Name: changelogs_text_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE changelogs_text_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE changelogs_text_id_seq FROM dak;
-GRANT ALL ON SEQUENCE changelogs_text_id_seq TO dak;
-GRANT ALL ON SEQUENCE changelogs_text_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE changelogs_text_id_seq TO PUBLIC;
-
-
---
--- Name: changes_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE changes_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE changes_id_seq FROM dak;
-GRANT ALL ON SEQUENCE changes_id_seq TO dak;
-GRANT ALL ON SEQUENCE changes_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE changes_id_seq TO PUBLIC;
-
-
---
--- Name: changes_pending_binaries; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes_pending_binaries FROM PUBLIC;
-REVOKE ALL ON TABLE changes_pending_binaries FROM dak;
-GRANT ALL ON TABLE changes_pending_binaries TO dak;
-GRANT SELECT ON TABLE changes_pending_binaries TO PUBLIC;
-GRANT ALL ON TABLE changes_pending_binaries TO ftpmaster;
-
-
---
--- Name: changes_pending_binaries_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE changes_pending_binaries_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE changes_pending_binaries_id_seq FROM dak;
-GRANT ALL ON SEQUENCE changes_pending_binaries_id_seq TO dak;
-GRANT ALL ON SEQUENCE changes_pending_binaries_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE changes_pending_binaries_id_seq TO PUBLIC;
-
-
---
--- Name: changes_pending_files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes_pending_files FROM PUBLIC;
-REVOKE ALL ON TABLE changes_pending_files FROM dak;
-GRANT ALL ON TABLE changes_pending_files TO dak;
-GRANT SELECT ON TABLE changes_pending_files TO PUBLIC;
-GRANT ALL ON TABLE changes_pending_files TO ftpmaster;
-GRANT DELETE ON TABLE changes_pending_files TO ftpteam;
-
-
---
--- Name: changes_pending_files_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE changes_pending_files_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE changes_pending_files_id_seq FROM dak;
-GRANT ALL ON SEQUENCE changes_pending_files_id_seq TO dak;
-GRANT ALL ON SEQUENCE changes_pending_files_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE changes_pending_files_id_seq TO PUBLIC;
-GRANT USAGE ON SEQUENCE changes_pending_files_id_seq TO ftpteam;
-
-
---
--- Name: changes_pending_files_map; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes_pending_files_map FROM PUBLIC;
-REVOKE ALL ON TABLE changes_pending_files_map FROM dak;
-GRANT ALL ON TABLE changes_pending_files_map TO dak;
-GRANT SELECT,INSERT,DELETE ON TABLE changes_pending_files_map TO ftpteam;
-GRANT SELECT ON TABLE changes_pending_files_map TO PUBLIC;
-
-
---
--- Name: changes_pending_source; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes_pending_source FROM PUBLIC;
-REVOKE ALL ON TABLE changes_pending_source FROM dak;
-GRANT ALL ON TABLE changes_pending_source TO dak;
-GRANT SELECT ON TABLE changes_pending_source TO PUBLIC;
-GRANT ALL ON TABLE changes_pending_source TO ftpmaster;
-
-
---
--- Name: changes_pending_source_files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes_pending_source_files FROM PUBLIC;
-REVOKE ALL ON TABLE changes_pending_source_files FROM dak;
-GRANT ALL ON TABLE changes_pending_source_files TO dak;
-GRANT SELECT ON TABLE changes_pending_source_files TO PUBLIC;
-GRANT ALL ON TABLE changes_pending_source_files TO ftpmaster;
-
-
---
--- Name: changes_pending_source_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE changes_pending_source_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE changes_pending_source_id_seq FROM dak;
-GRANT ALL ON SEQUENCE changes_pending_source_id_seq TO dak;
-GRANT ALL ON SEQUENCE changes_pending_source_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE changes_pending_source_id_seq TO PUBLIC;
-
-
---
--- Name: changes_pool_files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE changes_pool_files FROM PUBLIC;
-REVOKE ALL ON TABLE changes_pool_files FROM dak;
-GRANT ALL ON TABLE changes_pool_files TO dak;
-GRANT SELECT ON TABLE changes_pool_files TO PUBLIC;
-GRANT ALL ON TABLE changes_pool_files TO ftpmaster;
-GRANT DELETE ON TABLE changes_pool_files TO ftpteam;
-
-
---
--- Name: component_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE component_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE component_id_seq FROM dak;
-GRANT ALL ON SEQUENCE component_id_seq TO dak;
-GRANT SELECT ON SEQUENCE component_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE component_id_seq TO ftpmaster;
-
-
---
--- Name: component; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE component FROM PUBLIC;
-REVOKE ALL ON TABLE component FROM dak;
-GRANT ALL ON TABLE component TO dak;
-GRANT SELECT ON TABLE component TO PUBLIC;
-GRANT ALL ON TABLE component TO ftpmaster;
-
-
---
--- Name: config; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE config FROM PUBLIC;
-REVOKE ALL ON TABLE config FROM dak;
-GRANT ALL ON TABLE config TO dak;
-GRANT ALL ON TABLE config TO ftpmaster;
-GRANT SELECT ON TABLE config TO ftpteam;
-GRANT SELECT ON TABLE config TO PUBLIC;
-
-
---
--- Name: config_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE config_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE config_id_seq FROM dak;
-GRANT ALL ON SEQUENCE config_id_seq TO dak;
-GRANT ALL ON SEQUENCE config_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE config_id_seq TO PUBLIC;
-
-
---
--- Name: dsc_files_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE dsc_files_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE dsc_files_id_seq FROM dak;
-GRANT ALL ON SEQUENCE dsc_files_id_seq TO dak;
-GRANT SELECT ON SEQUENCE dsc_files_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE dsc_files_id_seq TO ftpmaster;
-
-
---
--- Name: dsc_files; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE dsc_files FROM PUBLIC;
-REVOKE ALL ON TABLE dsc_files FROM dak;
-GRANT ALL ON TABLE dsc_files TO dak;
-GRANT SELECT ON TABLE dsc_files TO PUBLIC;
-GRANT ALL ON TABLE dsc_files TO ftpmaster;
-
-
---
--- Name: external_overrides; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE external_overrides FROM PUBLIC;
-REVOKE ALL ON TABLE external_overrides FROM dak;
-GRANT ALL ON TABLE external_overrides TO dak;
-GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE external_overrides TO ftpmaster;
-GRANT SELECT ON TABLE external_overrides TO PUBLIC;
-
-
---
--- Name: extra_src_references; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE extra_src_references FROM PUBLIC;
-REVOKE ALL ON TABLE extra_src_references FROM dak;
-GRANT ALL ON TABLE extra_src_references TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE extra_src_references TO ftpmaster;
-GRANT SELECT ON TABLE extra_src_references TO PUBLIC;
-
-
---
--- Name: file_arch_suite; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE file_arch_suite FROM PUBLIC;
-REVOKE ALL ON TABLE file_arch_suite FROM dak;
-GRANT ALL ON TABLE file_arch_suite TO dak;
-GRANT ALL ON TABLE file_arch_suite TO ftpmaster;
-GRANT SELECT ON TABLE file_arch_suite TO PUBLIC;
-
-
---
--- Name: fingerprint_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE fingerprint_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE fingerprint_id_seq FROM dak;
-GRANT ALL ON SEQUENCE fingerprint_id_seq TO dak;
-GRANT SELECT ON SEQUENCE fingerprint_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE fingerprint_id_seq TO ftpmaster;
-
-
---
--- Name: fingerprint; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE fingerprint FROM PUBLIC;
-REVOKE ALL ON TABLE fingerprint FROM dak;
-GRANT ALL ON TABLE fingerprint TO dak;
-GRANT SELECT ON TABLE fingerprint TO PUBLIC;
-GRANT ALL ON TABLE fingerprint TO ftpmaster;
-
-
---
--- Name: keyring_acl_map; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE keyring_acl_map FROM PUBLIC;
-REVOKE ALL ON TABLE keyring_acl_map FROM dak;
-GRANT ALL ON TABLE keyring_acl_map TO dak;
-GRANT SELECT ON TABLE keyring_acl_map TO PUBLIC;
-GRANT ALL ON TABLE keyring_acl_map TO ftpmaster;
-
-
---
--- Name: keyring_acl_map_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE keyring_acl_map_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE keyring_acl_map_id_seq FROM dak;
-GRANT ALL ON SEQUENCE keyring_acl_map_id_seq TO dak;
-GRANT ALL ON SEQUENCE keyring_acl_map_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE keyring_acl_map_id_seq TO PUBLIC;
-
-
---
--- Name: keyrings; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE keyrings FROM PUBLIC;
-REVOKE ALL ON TABLE keyrings FROM dak;
-GRANT ALL ON TABLE keyrings TO dak;
-GRANT SELECT ON TABLE keyrings TO PUBLIC;
-GRANT ALL ON TABLE keyrings TO ftpmaster;
-
-
---
--- Name: keyrings_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE keyrings_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE keyrings_id_seq FROM dak;
-GRANT ALL ON SEQUENCE keyrings_id_seq TO dak;
-GRANT SELECT ON SEQUENCE keyrings_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE keyrings_id_seq TO ftpmaster;
-
-
---
--- Name: maintainer_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE maintainer_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE maintainer_id_seq FROM dak;
-GRANT ALL ON SEQUENCE maintainer_id_seq TO dak;
-GRANT SELECT ON SEQUENCE maintainer_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE maintainer_id_seq TO ftpmaster;
-
-
---
--- Name: maintainer; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE maintainer FROM PUBLIC;
-REVOKE ALL ON TABLE maintainer FROM dak;
-GRANT ALL ON TABLE maintainer TO dak;
-GRANT SELECT ON TABLE maintainer TO PUBLIC;
-GRANT ALL ON TABLE maintainer TO ftpmaster;
-
-
---
--- Name: metadata_keys; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE metadata_keys FROM PUBLIC;
-REVOKE ALL ON TABLE metadata_keys FROM dak;
-GRANT ALL ON TABLE metadata_keys TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE metadata_keys TO ftpmaster;
-GRANT SELECT ON TABLE metadata_keys TO PUBLIC;
-
-
---
--- Name: metadata_keys_key_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE metadata_keys_key_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE metadata_keys_key_id_seq FROM dak;
-GRANT ALL ON SEQUENCE metadata_keys_key_id_seq TO dak;
-GRANT ALL ON SEQUENCE metadata_keys_key_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE metadata_keys_key_id_seq TO PUBLIC;
-
-
---
--- Name: new_comments; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE new_comments FROM PUBLIC;
-REVOKE ALL ON TABLE new_comments FROM dak;
-GRANT ALL ON TABLE new_comments TO dak;
-GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE new_comments TO ftptrainee;
-GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE new_comments TO ftpteam;
-GRANT ALL ON TABLE new_comments TO ftpmaster;
-
-
---
--- Name: new_comments_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE new_comments_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE new_comments_id_seq FROM dak;
-GRANT ALL ON SEQUENCE new_comments_id_seq TO dak;
-GRANT SELECT,UPDATE ON SEQUENCE new_comments_id_seq TO ftptrainee;
-GRANT SELECT,UPDATE ON SEQUENCE new_comments_id_seq TO ftpteam;
-GRANT ALL ON SEQUENCE new_comments_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE new_comments_id_seq TO PUBLIC;
-
-
---
--- Name: newest_all_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE newest_all_associations FROM PUBLIC;
-REVOKE ALL ON TABLE newest_all_associations FROM dak;
-GRANT ALL ON TABLE newest_all_associations TO dak;
-GRANT SELECT ON TABLE newest_all_associations TO ftpmaster;
-GRANT SELECT ON TABLE newest_all_associations TO PUBLIC;
-
-
---
--- Name: newest_any_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE newest_any_associations FROM PUBLIC;
-REVOKE ALL ON TABLE newest_any_associations FROM dak;
-GRANT ALL ON TABLE newest_any_associations TO dak;
-GRANT SELECT ON TABLE newest_any_associations TO ftpmaster;
-GRANT SELECT ON TABLE newest_any_associations TO PUBLIC;
-
-
---
--- Name: source_suite; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE source_suite FROM PUBLIC;
-REVOKE ALL ON TABLE source_suite FROM dak;
-GRANT ALL ON TABLE source_suite TO dak;
-GRANT SELECT ON TABLE source_suite TO ftpmaster;
-GRANT SELECT ON TABLE source_suite TO PUBLIC;
-
-
---
--- Name: newest_source; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE newest_source FROM PUBLIC;
-REVOKE ALL ON TABLE newest_source FROM dak;
-GRANT ALL ON TABLE newest_source TO dak;
-GRANT SELECT ON TABLE newest_source TO ftpmaster;
-GRANT SELECT ON TABLE newest_source TO PUBLIC;
-
-
---
--- Name: newest_src_association; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE newest_src_association FROM PUBLIC;
-REVOKE ALL ON TABLE newest_src_association FROM dak;
-GRANT ALL ON TABLE newest_src_association TO dak;
-GRANT SELECT ON TABLE newest_src_association TO ftpmaster;
-GRANT SELECT ON TABLE newest_src_association TO PUBLIC;
-
-
---
--- Name: obsolete_all_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE obsolete_all_associations FROM PUBLIC;
-REVOKE ALL ON TABLE obsolete_all_associations FROM dak;
-GRANT ALL ON TABLE obsolete_all_associations TO dak;
-GRANT SELECT ON TABLE obsolete_all_associations TO ftpmaster;
-GRANT SELECT ON TABLE obsolete_all_associations TO PUBLIC;
-
-
---
--- Name: obsolete_any_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE obsolete_any_associations FROM PUBLIC;
-REVOKE ALL ON TABLE obsolete_any_associations FROM dak;
-GRANT ALL ON TABLE obsolete_any_associations TO dak;
-GRANT SELECT ON TABLE obsolete_any_associations TO ftpmaster;
-GRANT SELECT ON TABLE obsolete_any_associations TO PUBLIC;
-
-
---
--- Name: obsolete_any_by_all_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE obsolete_any_by_all_associations FROM PUBLIC;
-REVOKE ALL ON TABLE obsolete_any_by_all_associations FROM dak;
-GRANT ALL ON TABLE obsolete_any_by_all_associations TO dak;
-GRANT SELECT ON TABLE obsolete_any_by_all_associations TO ftpmaster;
-GRANT SELECT ON TABLE obsolete_any_by_all_associations TO PUBLIC;
-
-
---
--- Name: obsolete_src_associations; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE obsolete_src_associations FROM PUBLIC;
-REVOKE ALL ON TABLE obsolete_src_associations FROM dak;
-GRANT ALL ON TABLE obsolete_src_associations TO dak;
-GRANT SELECT ON TABLE obsolete_src_associations TO ftpmaster;
-GRANT SELECT ON TABLE obsolete_src_associations TO PUBLIC;
-
-
---
--- Name: override; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE override FROM PUBLIC;
-REVOKE ALL ON TABLE override FROM dak;
-GRANT ALL ON TABLE override TO dak;
-GRANT SELECT ON TABLE override TO PUBLIC;
-GRANT ALL ON TABLE override TO ftpmaster;
-GRANT INSERT,DELETE,UPDATE ON TABLE override TO ftpteam;
-
-
---
--- Name: override_type_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE override_type_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE override_type_id_seq FROM dak;
-GRANT ALL ON SEQUENCE override_type_id_seq TO dak;
-GRANT SELECT ON SEQUENCE override_type_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE override_type_id_seq TO ftpmaster;
-
-
---
--- Name: override_type; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE override_type FROM PUBLIC;
-REVOKE ALL ON TABLE override_type FROM dak;
-GRANT ALL ON TABLE override_type TO dak;
-GRANT SELECT ON TABLE override_type TO PUBLIC;
-GRANT ALL ON TABLE override_type TO ftpmaster;
-
-
---
--- Name: policy_queue; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE policy_queue FROM PUBLIC;
-REVOKE ALL ON TABLE policy_queue FROM dak;
-GRANT ALL ON TABLE policy_queue TO dak;
-GRANT SELECT ON TABLE policy_queue TO PUBLIC;
-GRANT ALL ON TABLE policy_queue TO ftpmaster;
-
-
---
--- Name: policy_queue_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE policy_queue_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE policy_queue_id_seq FROM dak;
-GRANT ALL ON SEQUENCE policy_queue_id_seq TO dak;
-GRANT ALL ON SEQUENCE policy_queue_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE policy_queue_id_seq TO PUBLIC;
-
-
---
--- Name: priority_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE priority_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE priority_id_seq FROM dak;
-GRANT ALL ON SEQUENCE priority_id_seq TO dak;
-GRANT SELECT ON SEQUENCE priority_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE priority_id_seq TO ftpmaster;
-
-
---
--- Name: priority; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE priority FROM PUBLIC;
-REVOKE ALL ON TABLE priority FROM dak;
-GRANT ALL ON TABLE priority TO dak;
-GRANT SELECT ON TABLE priority TO PUBLIC;
-GRANT ALL ON TABLE priority TO ftpmaster;
-
-
---
--- Name: section_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE section_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE section_id_seq FROM dak;
-GRANT ALL ON SEQUENCE section_id_seq TO dak;
-GRANT SELECT ON SEQUENCE section_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE section_id_seq TO ftpmaster;
-
-
---
--- Name: section; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE section FROM PUBLIC;
-REVOKE ALL ON TABLE section FROM dak;
-GRANT ALL ON TABLE section TO dak;
-GRANT SELECT ON TABLE section TO PUBLIC;
-GRANT ALL ON TABLE section TO ftpmaster;
-
-
---
--- Name: source_acl; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE source_acl FROM PUBLIC;
-REVOKE ALL ON TABLE source_acl FROM dak;
-GRANT ALL ON TABLE source_acl TO dak;
-GRANT SELECT ON TABLE source_acl TO PUBLIC;
-GRANT ALL ON TABLE source_acl TO ftpmaster;
-
-
---
--- Name: source_acl_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE source_acl_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE source_acl_id_seq FROM dak;
-GRANT ALL ON SEQUENCE source_acl_id_seq TO dak;
-GRANT ALL ON SEQUENCE source_acl_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE source_acl_id_seq TO PUBLIC;
-
-
---
--- Name: source_metadata; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE source_metadata FROM PUBLIC;
-REVOKE ALL ON TABLE source_metadata FROM dak;
-GRANT ALL ON TABLE source_metadata TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE source_metadata TO ftpmaster;
-GRANT SELECT ON TABLE source_metadata TO PUBLIC;
-
-
---
--- Name: src_contents; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE src_contents FROM PUBLIC;
-REVOKE ALL ON TABLE src_contents FROM dak;
-GRANT ALL ON TABLE src_contents TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE src_contents TO ftpmaster;
-GRANT SELECT ON TABLE src_contents TO PUBLIC;
-
-
---
--- Name: src_format; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE src_format FROM PUBLIC;
-REVOKE ALL ON TABLE src_format FROM dak;
-GRANT ALL ON TABLE src_format TO dak;
-GRANT SELECT ON TABLE src_format TO PUBLIC;
-GRANT ALL ON TABLE src_format TO ftpmaster;
-
-
---
--- Name: src_format_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE src_format_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE src_format_id_seq FROM dak;
-GRANT ALL ON SEQUENCE src_format_id_seq TO dak;
-GRANT ALL ON SEQUENCE src_format_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE src_format_id_seq TO PUBLIC;
-
-
---
--- Name: src_uploaders; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE src_uploaders FROM PUBLIC;
-REVOKE ALL ON TABLE src_uploaders FROM dak;
-GRANT ALL ON TABLE src_uploaders TO dak;
-GRANT SELECT ON TABLE src_uploaders TO PUBLIC;
-GRANT ALL ON TABLE src_uploaders TO ftpmaster;
-
-
---
--- Name: src_uploaders_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE src_uploaders_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE src_uploaders_id_seq FROM dak;
-GRANT ALL ON SEQUENCE src_uploaders_id_seq TO dak;
-GRANT SELECT ON SEQUENCE src_uploaders_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE src_uploaders_id_seq TO ftpmaster;
-
-
---
--- Name: suite_architectures; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE suite_architectures FROM PUBLIC;
-REVOKE ALL ON TABLE suite_architectures FROM dak;
-GRANT ALL ON TABLE suite_architectures TO dak;
-GRANT SELECT ON TABLE suite_architectures TO PUBLIC;
-GRANT ALL ON TABLE suite_architectures TO ftpmaster;
-
-
---
--- Name: suite_arch_by_name; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE suite_arch_by_name FROM PUBLIC;
-REVOKE ALL ON TABLE suite_arch_by_name FROM dak;
-GRANT ALL ON TABLE suite_arch_by_name TO dak;
-GRANT SELECT ON TABLE suite_arch_by_name TO PUBLIC;
-GRANT SELECT ON TABLE suite_arch_by_name TO ftpmaster;
-
-
---
--- Name: suite_build_queue_copy; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE suite_build_queue_copy FROM PUBLIC;
-REVOKE ALL ON TABLE suite_build_queue_copy FROM dak;
-GRANT ALL ON TABLE suite_build_queue_copy TO dak;
-GRANT SELECT ON TABLE suite_build_queue_copy TO PUBLIC;
-GRANT ALL ON TABLE suite_build_queue_copy TO ftpmaster;
-
-
---
--- Name: suite_src_formats; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE suite_src_formats FROM PUBLIC;
-REVOKE ALL ON TABLE suite_src_formats FROM dak;
-GRANT ALL ON TABLE suite_src_formats TO dak;
-GRANT SELECT ON TABLE suite_src_formats TO PUBLIC;
-GRANT ALL ON TABLE suite_src_formats TO ftpmaster;
-
-
---
--- Name: uid_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE uid_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE uid_id_seq FROM dak;
-GRANT ALL ON SEQUENCE uid_id_seq TO dak;
-GRANT SELECT ON SEQUENCE uid_id_seq TO PUBLIC;
-GRANT ALL ON SEQUENCE uid_id_seq TO ftpmaster;
-
-
---
--- Name: uid; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE uid FROM PUBLIC;
-REVOKE ALL ON TABLE uid FROM dak;
-GRANT ALL ON TABLE uid TO dak;
-GRANT SELECT ON TABLE uid TO PUBLIC;
-GRANT ALL ON TABLE uid TO ftpmaster;
-
-
---
--- Name: upload_blocks; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE upload_blocks FROM PUBLIC;
-REVOKE ALL ON TABLE upload_blocks FROM dak;
-GRANT ALL ON TABLE upload_blocks TO dak;
-GRANT SELECT ON TABLE upload_blocks TO PUBLIC;
-GRANT ALL ON TABLE upload_blocks TO ftpmaster;
-
-
---
--- Name: upload_blocks_id_seq; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON SEQUENCE upload_blocks_id_seq FROM PUBLIC;
-REVOKE ALL ON SEQUENCE upload_blocks_id_seq FROM dak;
-GRANT ALL ON SEQUENCE upload_blocks_id_seq TO dak;
-GRANT ALL ON SEQUENCE upload_blocks_id_seq TO ftpmaster;
-GRANT SELECT ON SEQUENCE upload_blocks_id_seq TO PUBLIC;
-
-
---
--- Name: version_check; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE version_check FROM PUBLIC;
-REVOKE ALL ON TABLE version_check FROM dak;
-GRANT ALL ON TABLE version_check TO dak;
-GRANT SELECT,INSERT,UPDATE ON TABLE version_check TO ftpmaster;
-GRANT SELECT ON TABLE version_check TO PUBLIC;
-
-
---
--- Name: version_checks; Type: ACL; Schema: public; Owner: dak
---
-
-REVOKE ALL ON TABLE version_checks FROM PUBLIC;
-REVOKE ALL ON TABLE version_checks FROM dak;
-GRANT ALL ON TABLE version_checks TO dak;
-GRANT SELECT ON TABLE version_checks TO PUBLIC;
-
-
---
--- PostgreSQL database dump complete
---
-
--- Set schema version
-INSERT INTO config (name, value) VALUES ('db_revision', 65);
-
diff --git a/setup/schema_68.sql b/setup/schema_68.sql
new file mode 100644 (file)
index 0000000..4a00ffc
--- /dev/null
@@ -0,0 +1,5733 @@
+--
+-- PostgreSQL database dump
+--
+
+SET statement_timeout = 0;
+SET client_encoding = 'SQL_ASCII';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+--
+-- Name: audit; Type: SCHEMA; Schema: -; Owner: dak
+--
+
+CREATE SCHEMA audit;
+
+
+ALTER SCHEMA audit OWNER TO dak;
+
+--
+-- Name: plpgsql; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: dak
+--
+
+CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql;
+
+
+ALTER PROCEDURAL LANGUAGE plpgsql OWNER TO dak;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Name: debversion; Type: SHELL TYPE; Schema: public; Owner: postgres
+--
+
+CREATE TYPE debversion;
+
+
+--
+-- Name: debversionin(cstring); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversionin(cstring) RETURNS debversion
+    LANGUAGE internal IMMUTABLE STRICT
+    AS $$textin$$;
+
+
+ALTER FUNCTION public.debversionin(cstring) OWNER TO postgres;
+
+--
+-- Name: debversionout(debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversionout(debversion) RETURNS cstring
+    LANGUAGE internal IMMUTABLE STRICT
+    AS $$textout$$;
+
+
+ALTER FUNCTION public.debversionout(debversion) OWNER TO postgres;
+
+--
+-- Name: debversionrecv(internal); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversionrecv(internal) RETURNS debversion
+    LANGUAGE internal STABLE STRICT
+    AS $$textrecv$$;
+
+
+ALTER FUNCTION public.debversionrecv(internal) OWNER TO postgres;
+
+--
+-- Name: debversionsend(debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversionsend(debversion) RETURNS bytea
+    LANGUAGE internal STABLE STRICT
+    AS $$textsend$$;
+
+
+ALTER FUNCTION public.debversionsend(debversion) OWNER TO postgres;
+
+--
+-- Name: debversion; Type: TYPE; Schema: public; Owner: postgres
+--
+
+CREATE TYPE debversion (
+    INTERNALLENGTH = variable,
+    INPUT = debversionin,
+    OUTPUT = debversionout,
+    RECEIVE = debversionrecv,
+    SEND = debversionsend,
+    CATEGORY = 'S',
+    ALIGNMENT = int4,
+    STORAGE = extended
+);
+
+
+ALTER TYPE public.debversion OWNER TO postgres;
+
+--
+-- Name: TYPE debversion; Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON TYPE debversion IS 'Debian package version number';
+
+
+--
+-- Name: bin_associations_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION bin_associations_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM bin_associations$$;
+
+
+ALTER FUNCTION public.bin_associations_id_max() OWNER TO dak;
+
+--
+-- Name: binaries_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION binaries_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM binaries$$;
+
+
+ALTER FUNCTION public.binaries_id_max() OWNER TO dak;
+
+--
+-- Name: debversion(character); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion(character) RETURNS debversion
+    LANGUAGE internal IMMUTABLE STRICT
+    AS $$rtrim1$$;
+
+
+ALTER FUNCTION public.debversion(character) OWNER TO postgres;
+
+--
+-- Name: debversion_cmp(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_cmp(version1 debversion, version2 debversion) RETURNS integer
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_cmp';
+
+
+ALTER FUNCTION public.debversion_cmp(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_cmp(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_cmp(version1 debversion, version2 debversion) IS 'Compare Debian versions';
+
+
+--
+-- Name: debversion_eq(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_eq(version1 debversion, version2 debversion) RETURNS boolean
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_eq';
+
+
+ALTER FUNCTION public.debversion_eq(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_eq(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_eq(version1 debversion, version2 debversion) IS 'debversion equal';
+
+
+--
+-- Name: debversion_ge(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_ge(version1 debversion, version2 debversion) RETURNS boolean
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_ge';
+
+
+ALTER FUNCTION public.debversion_ge(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_ge(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_ge(version1 debversion, version2 debversion) IS 'debversion greater-than-or-equal';
+
+
+--
+-- Name: debversion_gt(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_gt(version1 debversion, version2 debversion) RETURNS boolean
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_gt';
+
+
+ALTER FUNCTION public.debversion_gt(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_gt(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_gt(version1 debversion, version2 debversion) IS 'debversion greater-than';
+
+
+--
+-- Name: debversion_hash(debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_hash(debversion) RETURNS integer
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_hash';
+
+
+ALTER FUNCTION public.debversion_hash(debversion) OWNER TO postgres;
+
+--
+-- Name: debversion_larger(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_larger(version1 debversion, version2 debversion) RETURNS debversion
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_larger';
+
+
+ALTER FUNCTION public.debversion_larger(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: debversion_le(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_le(version1 debversion, version2 debversion) RETURNS boolean
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_le';
+
+
+ALTER FUNCTION public.debversion_le(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_le(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_le(version1 debversion, version2 debversion) IS 'debversion less-than-or-equal';
+
+
+--
+-- Name: debversion_lt(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_lt(version1 debversion, version2 debversion) RETURNS boolean
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_lt';
+
+
+ALTER FUNCTION public.debversion_lt(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_lt(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_lt(version1 debversion, version2 debversion) IS 'debversion less-than';
+
+
+--
+-- Name: debversion_ne(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_ne(version1 debversion, version2 debversion) RETURNS boolean
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_ne';
+
+
+ALTER FUNCTION public.debversion_ne(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: FUNCTION debversion_ne(version1 debversion, version2 debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON FUNCTION debversion_ne(version1 debversion, version2 debversion) IS 'debversion not equal';
+
+
+--
+-- Name: debversion_smaller(debversion, debversion); Type: FUNCTION; Schema: public; Owner: postgres
+--
+
+CREATE FUNCTION debversion_smaller(version1 debversion, version2 debversion) RETURNS debversion
+    LANGUAGE c IMMUTABLE STRICT
+    AS '$libdir/debversion', 'debversion_smaller';
+
+
+ALTER FUNCTION public.debversion_smaller(version1 debversion, version2 debversion) OWNER TO postgres;
+
+--
+-- Name: dsc_files_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION dsc_files_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM dsc_files$$;
+
+
+ALTER FUNCTION public.dsc_files_id_max() OWNER TO dak;
+
+--
+-- Name: files_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION files_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM files$$;
+
+
+ALTER FUNCTION public.files_id_max() OWNER TO dak;
+
+--
+-- Name: override_type_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION override_type_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM override_type$$;
+
+
+ALTER FUNCTION public.override_type_id_max() OWNER TO dak;
+
+--
+-- Name: priority_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION priority_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM priority$$;
+
+
+ALTER FUNCTION public.priority_id_max() OWNER TO dak;
+
+--
+-- Name: section_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION section_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM section$$;
+
+
+ALTER FUNCTION public.section_id_max() OWNER TO dak;
+
+--
+-- Name: source_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION source_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM source$$;
+
+
+ALTER FUNCTION public.source_id_max() OWNER TO dak;
+
+--
+-- Name: space_concat(text, text); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION space_concat(text, text) RETURNS text
+    LANGUAGE sql
+    AS $_$select case
+WHEN $2 is null or $2 = '' THEN $1
+WHEN $1 is null or $1 = '' THEN $2
+ELSE $1 || ' ' || $2
+END$_$;
+
+
+ALTER FUNCTION public.space_concat(text, text) OWNER TO dak;
+
+--
+-- Name: src_associations_id_max(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION src_associations_id_max() RETURNS integer
+    LANGUAGE sql
+    AS $$SELECT max(id) FROM src_associations$$;
+
+
+ALTER FUNCTION public.src_associations_id_max() OWNER TO dak;
+
+--
+-- Name: tfunc_set_modified(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION tfunc_set_modified() RETURNS trigger
+    LANGUAGE plpgsql
+    AS $$
+    BEGIN NEW.modified = now(); return NEW; END;
+    $$;
+
+
+ALTER FUNCTION public.tfunc_set_modified() OWNER TO dak;
+
+--
+-- Name: trigger_binsrc_assoc_update(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION trigger_binsrc_assoc_update() RETURNS trigger
+    LANGUAGE plpgsql SECURITY DEFINER
+    SET search_path TO public, pg_temp
+    AS $$
+DECLARE
+  v_data RECORD;
+
+  v_package audit.package_changes.package%TYPE;
+  v_version audit.package_changes.version%TYPE;
+  v_architecture audit.package_changes.architecture%TYPE;
+  v_suite audit.package_changes.suite%TYPE;
+  v_event audit.package_changes.event%TYPE;
+  v_priority audit.package_changes.priority%TYPE;
+  v_component audit.package_changes.component%TYPE;
+  v_section audit.package_changes.section%TYPE;
+BEGIN
+  CASE TG_OP
+    WHEN 'INSERT' THEN v_event := 'I'; v_data := NEW;
+    WHEN 'DELETE' THEN v_event := 'D'; v_data := OLD;
+    ELSE RAISE EXCEPTION 'trigger called for invalid operation (%)', TG_OP;
+  END CASE;
+
+  SELECT suite_name INTO STRICT v_suite FROM suite WHERE id = v_data.suite;
+
+  CASE TG_TABLE_NAME
+    WHEN 'bin_associations' THEN
+      SELECT package, version, arch_string
+        INTO STRICT v_package, v_version, v_architecture
+        FROM binaries LEFT JOIN architecture ON (architecture.id = binaries.architecture)
+        WHERE binaries.id = v_data.bin;
+
+      SELECT component.name, priority.priority, section.section
+        INTO v_component, v_priority, v_section
+        FROM override
+             JOIN override_type ON (override.type = override_type.id)
+             JOIN priority ON (priority.id = override.priority)
+             JOIN section ON (section.id = override.section)
+             JOIN component ON (override.component = component.id)
+             JOIN suite ON (suite.id = override.suite)
+        WHERE override_type.type != 'dsc'
+              AND override.package = v_package AND suite.id = v_data.suite;
+
+    WHEN 'src_associations' THEN
+      SELECT source, version
+        INTO STRICT v_package, v_version
+        FROM source WHERE source.id = v_data.source;
+      v_architecture := 'source';
+
+      SELECT component.name, priority.priority, section.section
+        INTO v_component, v_priority, v_section
+        FROM override
+             JOIN override_type ON (override.type = override_type.id)
+             JOIN priority ON (priority.id = override.priority)
+             JOIN section ON (section.id = override.section)
+             JOIN component ON (override.component = component.id)
+             JOIN suite ON (suite.id = override.suite)
+        WHERE override_type.type = 'dsc'
+              AND override.package = v_package AND suite.id = v_data.suite;
+
+    ELSE RAISE EXCEPTION 'trigger called for invalid table (%)', TG_TABLE_NAME;
+  END CASE;
+
+  INSERT INTO audit.package_changes
+    (package, version, architecture, suite, event, priority, component, section)
+    VALUES (v_package, v_version, v_architecture, v_suite, v_event, v_priority, v_component, v_section);
+
+  RETURN NEW;
+END;
+$$;
+
+
+ALTER FUNCTION public.trigger_binsrc_assoc_update() OWNER TO dak;
+
+--
+-- Name: trigger_override_update(); Type: FUNCTION; Schema: public; Owner: dak
+--
+
+CREATE FUNCTION trigger_override_update() RETURNS trigger
+    LANGUAGE plpgsql SECURITY DEFINER
+    SET search_path TO public, pg_temp
+    AS $$
+DECLARE
+  v_src_override_id override_type.id%TYPE;
+
+  v_priority audit.package_changes.priority%TYPE := NULL;
+  v_component audit.package_changes.component%TYPE := NULL;
+  v_section audit.package_changes.section%TYPE := NULL;
+BEGIN
+
+  IF TG_TABLE_NAME != 'override' THEN
+    RAISE EXCEPTION 'trigger called for invalid table (%)', TG_TABLE_NAME;
+  END IF;
+  IF TG_OP != 'UPDATE' THEN
+    RAISE EXCEPTION 'trigger called for invalid event (%)', TG_OP;
+  END IF;
+
+  IF OLD.package != NEW.package OR OLD.type != NEW.type OR OLD.suite != NEW.suite THEN
+    RETURN NEW;
+  END IF;
+
+  IF OLD.priority != NEW.priority THEN
+    SELECT priority INTO STRICT v_priority FROM priority WHERE id = NEW.priority;
+  END IF;
+
+  IF OLD.component != NEW.component THEN
+    SELECT name INTO STRICT v_component FROM component WHERE id = NEW.component;
+  END IF;
+
+  IF OLD.section != NEW.section THEN
+    SELECT section INTO STRICT v_section FROM section WHERE id = NEW.section;
+  END IF;
+
+  -- Find out if we're doing src or binary overrides
+  SELECT id INTO STRICT v_src_override_id FROM override_type WHERE type = 'dsc';
+  IF OLD.type = v_src_override_id THEN
+    -- Doing a src_association link
+    INSERT INTO audit.package_changes
+      (package, version, architecture, suite, event, priority, component, section)
+      SELECT NEW.package, source.version, 'source', suite.suite_name, 'U', v_priority, v_component, v_section
+        FROM source
+          JOIN src_associations ON (source.id = src_associations.source)
+          JOIN suite ON (suite.id = src_associations.suite)
+        WHERE source.source = NEW.package AND src_associations.suite = NEW.suite;
+  ELSE
+    -- Doing a bin_association link
+    INSERT INTO audit.package_changes
+      (package, version, architecture, suite, event, priority, component, section)
+      SELECT NEW.package, binaries.version, architecture.arch_string, suite.suite_name, 'U', v_priority, v_component, v_section
+        FROM binaries
+          JOIN bin_associations ON (binaries.id = bin_associations.bin)
+          JOIN architecture ON (architecture.id = binaries.architecture)
+          JOIN suite ON (suite.id = bin_associations.suite)
+        WHERE binaries.package = NEW.package AND bin_associations.suite = NEW.suite;
+  END IF;
+
+  RETURN NEW;
+END;
+$$;
+
+
+ALTER FUNCTION public.trigger_override_update() OWNER TO dak;
+
+--
+-- Name: >; Type: OPERATOR; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR > (
+    PROCEDURE = debversion_gt,
+    LEFTARG = debversion,
+    RIGHTARG = debversion,
+    COMMUTATOR = <,
+    NEGATOR = >=
+);
+
+
+ALTER OPERATOR public.> (debversion, debversion) OWNER TO postgres;
+
+--
+-- Name: OPERATOR > (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON OPERATOR > (debversion, debversion) IS 'debversion greater-than';
+
+
+--
+-- Name: max(debversion); Type: AGGREGATE; Schema: public; Owner: postgres
+--
+
+CREATE AGGREGATE max(debversion) (
+    SFUNC = debversion_larger,
+    STYPE = debversion,
+    SORTOP = >
+);
+
+
+ALTER AGGREGATE public.max(debversion) OWNER TO postgres;
+
+--
+-- Name: <; Type: OPERATOR; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR < (
+    PROCEDURE = debversion_lt,
+    LEFTARG = debversion,
+    RIGHTARG = debversion,
+    COMMUTATOR = >,
+    NEGATOR = >=
+);
+
+
+ALTER OPERATOR public.< (debversion, debversion) OWNER TO postgres;
+
+--
+-- Name: OPERATOR < (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON OPERATOR < (debversion, debversion) IS 'debversion less-than';
+
+
+--
+-- Name: min(debversion); Type: AGGREGATE; Schema: public; Owner: postgres
+--
+
+CREATE AGGREGATE min(debversion) (
+    SFUNC = debversion_smaller,
+    STYPE = debversion,
+    SORTOP = <
+);
+
+
+ALTER AGGREGATE public.min(debversion) OWNER TO postgres;
+
+--
+-- Name: space_separated_list(text); Type: AGGREGATE; Schema: public; Owner: dak
+--
+
+CREATE AGGREGATE space_separated_list(text) (
+    SFUNC = space_concat,
+    STYPE = text,
+    INITCOND = ''
+);
+
+
+ALTER AGGREGATE public.space_separated_list(text) OWNER TO dak;
+
+--
+-- Name: <=; Type: OPERATOR; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR <= (
+    PROCEDURE = debversion_le,
+    LEFTARG = debversion,
+    RIGHTARG = debversion,
+    COMMUTATOR = >=,
+    NEGATOR = >
+);
+
+
+ALTER OPERATOR public.<= (debversion, debversion) OWNER TO postgres;
+
+--
+-- Name: OPERATOR <= (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON OPERATOR <= (debversion, debversion) IS 'debversion less-than-or-equal';
+
+
+--
+-- Name: <>; Type: OPERATOR; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR <> (
+    PROCEDURE = debversion_ne,
+    LEFTARG = debversion,
+    RIGHTARG = debversion,
+    COMMUTATOR = <>,
+    NEGATOR = =
+);
+
+
+ALTER OPERATOR public.<> (debversion, debversion) OWNER TO postgres;
+
+--
+-- Name: OPERATOR <> (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON OPERATOR <> (debversion, debversion) IS 'debversion not equal';
+
+
+--
+-- Name: =; Type: OPERATOR; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR = (
+    PROCEDURE = debversion_eq,
+    LEFTARG = debversion,
+    RIGHTARG = debversion,
+    COMMUTATOR = =,
+    NEGATOR = <>
+);
+
+
+ALTER OPERATOR public.= (debversion, debversion) OWNER TO postgres;
+
+--
+-- Name: OPERATOR = (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON OPERATOR = (debversion, debversion) IS 'debversion equal';
+
+
+--
+-- Name: >=; Type: OPERATOR; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR >= (
+    PROCEDURE = debversion_ge,
+    LEFTARG = debversion,
+    RIGHTARG = debversion,
+    COMMUTATOR = <=,
+    NEGATOR = <
+);
+
+
+ALTER OPERATOR public.>= (debversion, debversion) OWNER TO postgres;
+
+--
+-- Name: OPERATOR >= (debversion, debversion); Type: COMMENT; Schema: public; Owner: postgres
+--
+
+COMMENT ON OPERATOR >= (debversion, debversion) IS 'debversion greater-than-or-equal';
+
+
+--
+-- Name: debversion_ops; Type: OPERATOR CLASS; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR CLASS debversion_ops
+    DEFAULT FOR TYPE debversion USING btree AS
+    OPERATOR 1 <(debversion,debversion) ,
+    OPERATOR 2 <=(debversion,debversion) ,
+    OPERATOR 3 =(debversion,debversion) ,
+    OPERATOR 4 >=(debversion,debversion) ,
+    OPERATOR 5 >(debversion,debversion) ,
+    FUNCTION 1 debversion_cmp(debversion,debversion);
+
+
+ALTER OPERATOR CLASS public.debversion_ops USING btree OWNER TO postgres;
+
+--
+-- Name: debversion_ops; Type: OPERATOR CLASS; Schema: public; Owner: postgres
+--
+
+CREATE OPERATOR CLASS debversion_ops
+    DEFAULT FOR TYPE debversion USING hash AS
+    OPERATOR 1 =(debversion,debversion) ,
+    FUNCTION 1 debversion_hash(debversion);
+
+
+ALTER OPERATOR CLASS public.debversion_ops USING hash OWNER TO postgres;
+
+SET search_path = pg_catalog;
+
+--
+-- Name: CAST (character AS public.debversion); Type: CAST; Schema: pg_catalog; Owner: 
+--
+
+CREATE CAST (character AS public.debversion) WITH FUNCTION public.debversion(character);
+
+
+--
+-- Name: CAST (public.debversion AS character); Type: CAST; Schema: pg_catalog; Owner: 
+--
+
+CREATE CAST (public.debversion AS character) WITHOUT FUNCTION AS ASSIGNMENT;
+
+
+--
+-- Name: CAST (public.debversion AS text); Type: CAST; Schema: pg_catalog; Owner: 
+--
+
+CREATE CAST (public.debversion AS text) WITHOUT FUNCTION AS IMPLICIT;
+
+
+--
+-- Name: CAST (public.debversion AS character varying); Type: CAST; Schema: pg_catalog; Owner: 
+--
+
+CREATE CAST (public.debversion AS character varying) WITHOUT FUNCTION AS IMPLICIT;
+
+
+--
+-- Name: CAST (text AS public.debversion); Type: CAST; Schema: pg_catalog; Owner: 
+--
+
+CREATE CAST (text AS public.debversion) WITHOUT FUNCTION AS ASSIGNMENT;
+
+
+--
+-- Name: CAST (character varying AS public.debversion); Type: CAST; Schema: pg_catalog; Owner: 
+--
+
+CREATE CAST (character varying AS public.debversion) WITHOUT FUNCTION AS ASSIGNMENT;
+
+
+SET search_path = audit, pg_catalog;
+
+SET default_tablespace = '';
+
+SET default_with_oids = false;
+
+--
+-- Name: package_changes; Type: TABLE; Schema: audit; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE package_changes (
+    changedate timestamp without time zone DEFAULT now() NOT NULL,
+    package text NOT NULL,
+    version public.debversion NOT NULL,
+    architecture text NOT NULL,
+    suite text NOT NULL,
+    event text NOT NULL,
+    priority text,
+    component text,
+    section text
+);
+
+
+ALTER TABLE audit.package_changes OWNER TO dak;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Name: bin_associations_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE bin_associations_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.bin_associations_id_seq OWNER TO dak;
+
+--
+-- Name: bin_associations; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE bin_associations (
+    id integer DEFAULT nextval('bin_associations_id_seq'::regclass) NOT NULL,
+    suite integer NOT NULL,
+    bin integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.bin_associations OWNER TO dak;
+
+--
+-- Name: binaries_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE binaries_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.binaries_id_seq OWNER TO dak;
+
+--
+-- Name: binaries; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE binaries (
+    id integer DEFAULT nextval('binaries_id_seq'::regclass) NOT NULL,
+    package text NOT NULL,
+    version debversion NOT NULL,
+    maintainer integer NOT NULL,
+    source integer NOT NULL,
+    architecture integer NOT NULL,
+    file integer NOT NULL,
+    type text NOT NULL,
+    sig_fpr integer,
+    install_date timestamp with time zone DEFAULT now(),
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    stanza text
+);
+
+
+ALTER TABLE public.binaries OWNER TO dak;
+
+--
+-- Name: bin_associations_binaries; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW bin_associations_binaries AS
+    SELECT bin_associations.id, bin_associations.bin, binaries.package, binaries.version, bin_associations.suite, binaries.architecture, binaries.source FROM (bin_associations JOIN binaries ON ((bin_associations.bin = binaries.id)));
+
+
+ALTER TABLE public.bin_associations_binaries OWNER TO dak;
+
+--
+-- Name: source_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE source_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.source_id_seq OWNER TO dak;
+
+--
+-- Name: source; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE source (
+    id integer DEFAULT nextval('source_id_seq'::regclass) NOT NULL,
+    source text NOT NULL,
+    version debversion NOT NULL,
+    maintainer integer NOT NULL,
+    file integer NOT NULL,
+    sig_fpr integer,
+    install_date timestamp with time zone NOT NULL,
+    changedby integer NOT NULL,
+    dm_upload_allowed boolean DEFAULT false NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    stanza text
+);
+
+
+ALTER TABLE public.source OWNER TO dak;
+
+--
+-- Name: src_associations_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE src_associations_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.src_associations_id_seq OWNER TO dak;
+
+--
+-- Name: src_associations; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE src_associations (
+    id integer DEFAULT nextval('src_associations_id_seq'::regclass) NOT NULL,
+    suite integer NOT NULL,
+    source integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.src_associations OWNER TO dak;
+
+--
+-- Name: src_associations_bin; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW src_associations_bin AS
+    SELECT src_associations.id, src_associations.source, src_associations.suite, binaries.id AS bin, binaries.architecture FROM ((src_associations JOIN source ON ((src_associations.source = source.id))) JOIN binaries ON ((source.id = binaries.source)));
+
+
+ALTER TABLE public.src_associations_bin OWNER TO dak;
+
+--
+-- Name: almost_obsolete_all_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW almost_obsolete_all_associations AS
+    SELECT bin_associations_binaries.id, bin_associations_binaries.bin, bin_associations_binaries.package, bin_associations_binaries.version, bin_associations_binaries.suite FROM (bin_associations_binaries LEFT JOIN src_associations_bin USING (bin, suite, architecture)) WHERE ((src_associations_bin.source IS NULL) AND (bin_associations_binaries.architecture = 2));
+
+
+ALTER TABLE public.almost_obsolete_all_associations OWNER TO dak;
+
+--
+-- Name: any_associations_source; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW any_associations_source AS
+    SELECT bin_associations.id, bin_associations.suite, binaries.id AS bin, binaries.package, binaries.version AS binver, binaries.architecture, source.id AS src, source.source, source.version AS srcver FROM ((bin_associations JOIN binaries ON (((bin_associations.bin = binaries.id) AND (binaries.architecture <> 2)))) JOIN source ON ((binaries.source = source.id)));
+
+
+ALTER TABLE public.any_associations_source OWNER TO dak;
+
+--
+-- Name: src_associations_src; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW src_associations_src AS
+    SELECT src_associations.id, src_associations.suite, source.id AS src, source.source, source.version FROM (src_associations JOIN source ON ((src_associations.source = source.id)));
+
+
+ALTER TABLE public.src_associations_src OWNER TO dak;
+
+--
+-- Name: almost_obsolete_src_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW almost_obsolete_src_associations AS
+    SELECT src_associations_src.id, src_associations_src.src, src_associations_src.source, src_associations_src.version, src_associations_src.suite FROM (src_associations_src LEFT JOIN any_associations_source USING (src, suite)) WHERE (any_associations_source.bin IS NULL);
+
+
+ALTER TABLE public.almost_obsolete_src_associations OWNER TO dak;
+
+--
+-- Name: architecture_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE architecture_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.architecture_id_seq OWNER TO dak;
+
+--
+-- Name: architecture; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE architecture (
+    id integer DEFAULT nextval('architecture_id_seq'::regclass) NOT NULL,
+    arch_string text NOT NULL,
+    description text,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.architecture OWNER TO dak;
+
+--
+-- Name: archive_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE archive_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.archive_id_seq OWNER TO dak;
+
+--
+-- Name: archive; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE archive (
+    id integer DEFAULT nextval('archive_id_seq'::regclass) NOT NULL,
+    name text NOT NULL,
+    origin_server text,
+    description text,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    primary_mirror text
+);
+
+
+ALTER TABLE public.archive OWNER TO dak;
+
+--
+-- Name: bin_contents; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE bin_contents (
+    file text NOT NULL,
+    binary_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.bin_contents OWNER TO dak;
+
+--
+-- Name: binaries_metadata; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE binaries_metadata (
+    bin_id integer NOT NULL,
+    key_id integer NOT NULL,
+    value text NOT NULL
+);
+
+
+ALTER TABLE public.binaries_metadata OWNER TO dak;
+
+--
+-- Name: suite_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE suite_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.suite_id_seq OWNER TO dak;
+
+--
+-- Name: suite; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE suite (
+    id integer DEFAULT nextval('suite_id_seq'::regclass) NOT NULL,
+    suite_name text NOT NULL,
+    version text,
+    origin text,
+    label text,
+    description text,
+    untouchable boolean DEFAULT false NOT NULL,
+    codename text,
+    overridecodename text,
+    validtime integer DEFAULT 604800 NOT NULL,
+    priority integer DEFAULT 0 NOT NULL,
+    notautomatic boolean DEFAULT false NOT NULL,
+    copychanges text,
+    overridesuite text,
+    policy_queue_id integer,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    changelog text,
+    butautomaticupgrades boolean DEFAULT false NOT NULL,
+    signingkeys text[],
+    announce text[],
+    CONSTRAINT bau_needs_na_set CHECK (((NOT butautomaticupgrades) OR notautomatic))
+);
+
+
+ALTER TABLE public.suite OWNER TO dak;
+
+--
+-- Name: binaries_suite_arch; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW binaries_suite_arch AS
+    SELECT bin_associations.id, binaries.id AS bin, binaries.package, binaries.version, binaries.source, bin_associations.suite, suite.suite_name, binaries.architecture, architecture.arch_string FROM (((binaries JOIN bin_associations ON ((binaries.id = bin_associations.bin))) JOIN suite ON ((suite.id = bin_associations.suite))) JOIN architecture ON ((binaries.architecture = architecture.id)));
+
+
+ALTER TABLE public.binaries_suite_arch OWNER TO dak;
+
+--
+-- Name: binary_acl; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE binary_acl (
+    id integer NOT NULL,
+    access_level text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.binary_acl OWNER TO dak;
+
+--
+-- Name: binary_acl_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE binary_acl_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.binary_acl_id_seq OWNER TO dak;
+
+--
+-- Name: binary_acl_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE binary_acl_id_seq OWNED BY binary_acl.id;
+
+
+--
+-- Name: binary_acl_map; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE binary_acl_map (
+    id integer NOT NULL,
+    fingerprint_id integer NOT NULL,
+    architecture_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.binary_acl_map OWNER TO dak;
+
+--
+-- Name: binary_acl_map_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE binary_acl_map_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.binary_acl_map_id_seq OWNER TO dak;
+
+--
+-- Name: binary_acl_map_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE binary_acl_map_id_seq OWNED BY binary_acl_map.id;
+
+
+--
+-- Name: files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE files_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.files_id_seq OWNER TO dak;
+
+--
+-- Name: files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE files (
+    id integer DEFAULT nextval('files_id_seq'::regclass) NOT NULL,
+    filename text NOT NULL,
+    size bigint NOT NULL,
+    md5sum text NOT NULL,
+    location integer NOT NULL,
+    last_used timestamp with time zone,
+    sha1sum text,
+    sha256sum text,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.files OWNER TO dak;
+
+--
+-- Name: location_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE location_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.location_id_seq OWNER TO dak;
+
+--
+-- Name: location; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE location (
+    id integer DEFAULT nextval('location_id_seq'::regclass) NOT NULL,
+    path text NOT NULL,
+    component integer,
+    archive integer,
+    type text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.location OWNER TO dak;
+
+--
+-- Name: binfiles_suite_component_arch; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW binfiles_suite_component_arch AS
+    SELECT files.filename, binaries.type, location.path, location.component, bin_associations.suite, binaries.architecture FROM (((binaries JOIN bin_associations ON ((binaries.id = bin_associations.bin))) JOIN files ON ((binaries.file = files.id))) JOIN location ON ((files.location = location.id)));
+
+
+ALTER TABLE public.binfiles_suite_component_arch OWNER TO dak;
+
+--
+-- Name: build_queue; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE build_queue (
+    id integer NOT NULL,
+    queue_name text NOT NULL,
+    path text NOT NULL,
+    copy_files boolean DEFAULT false NOT NULL,
+    generate_metadata boolean DEFAULT false NOT NULL,
+    origin text,
+    label text,
+    releasedescription text,
+    signingkey text,
+    stay_of_execution integer DEFAULT 86400 NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    notautomatic boolean DEFAULT false NOT NULL,
+    CONSTRAINT build_queue_meta_sanity_check CHECK (((generate_metadata IS FALSE) OR (((origin IS NOT NULL) AND (label IS NOT NULL)) AND (releasedescription IS NOT NULL)))),
+    CONSTRAINT build_queue_stay_of_execution_check CHECK ((stay_of_execution >= 0))
+);
+
+
+ALTER TABLE public.build_queue OWNER TO dak;
+
+--
+-- Name: build_queue_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE build_queue_files (
+    id integer NOT NULL,
+    build_queue_id integer NOT NULL,
+    insertdate timestamp without time zone DEFAULT now() NOT NULL,
+    lastused timestamp without time zone,
+    filename text NOT NULL,
+    fileid integer,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.build_queue_files OWNER TO dak;
+
+--
+-- Name: build_queue_files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE build_queue_files_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.build_queue_files_id_seq OWNER TO dak;
+
+--
+-- Name: build_queue_files_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE build_queue_files_id_seq OWNED BY build_queue_files.id;
+
+
+--
+-- Name: build_queue_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE build_queue_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.build_queue_id_seq OWNER TO dak;
+
+--
+-- Name: build_queue_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE build_queue_id_seq OWNED BY build_queue.id;
+
+
+--
+-- Name: build_queue_policy_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE build_queue_policy_files (
+    build_queue_id integer NOT NULL,
+    file_id integer NOT NULL,
+    filename text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    lastused timestamp without time zone
+);
+
+
+ALTER TABLE public.build_queue_policy_files OWNER TO dak;
+
+--
+-- Name: changelogs_text; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changelogs_text (
+    id integer NOT NULL,
+    changelog text
+);
+
+
+ALTER TABLE public.changelogs_text OWNER TO dak;
+
+--
+-- Name: changes; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes (
+    id integer NOT NULL,
+    changesname text NOT NULL,
+    seen timestamp with time zone DEFAULT now() NOT NULL,
+    source text NOT NULL,
+    binaries text NOT NULL,
+    architecture text NOT NULL,
+    version text NOT NULL,
+    distribution text NOT NULL,
+    urgency text NOT NULL,
+    maintainer text NOT NULL,
+    fingerprint text NOT NULL,
+    changedby text NOT NULL,
+    date text NOT NULL,
+    in_queue integer,
+    approved_for integer,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    changelog_id integer
+);
+
+
+ALTER TABLE public.changes OWNER TO dak;
+
+--
+-- Name: changelogs; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW changelogs AS
+    SELECT cl.id, c.source, (c.version)::debversion AS version, c.architecture, cl.changelog, c.distribution FROM (changes c JOIN changelogs_text cl ON ((cl.id = c.changelog_id)));
+
+
+ALTER TABLE public.changelogs OWNER TO dak;
+
+--
+-- Name: changelogs_text_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE changelogs_text_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.changelogs_text_id_seq OWNER TO dak;
+
+--
+-- Name: changelogs_text_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE changelogs_text_id_seq OWNED BY changelogs_text.id;
+
+
+--
+-- Name: changes_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE changes_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.changes_id_seq OWNER TO dak;
+
+--
+-- Name: changes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE changes_id_seq OWNED BY changes.id;
+
+
+--
+-- Name: changes_pending_binaries; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes_pending_binaries (
+    id integer NOT NULL,
+    change_id integer NOT NULL,
+    package text NOT NULL,
+    version debversion NOT NULL,
+    architecture_id integer NOT NULL,
+    source_id integer,
+    pending_source_id integer,
+    pending_file_id integer,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    CONSTRAINT changes_pending_binaries_check CHECK (((source_id IS NOT NULL) OR (pending_source_id IS NOT NULL)))
+);
+
+
+ALTER TABLE public.changes_pending_binaries OWNER TO dak;
+
+--
+-- Name: changes_pending_binaries_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE changes_pending_binaries_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.changes_pending_binaries_id_seq OWNER TO dak;
+
+--
+-- Name: changes_pending_binaries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE changes_pending_binaries_id_seq OWNED BY changes_pending_binaries.id;
+
+
+--
+-- Name: changes_pending_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes_pending_files (
+    id integer NOT NULL,
+    filename text NOT NULL,
+    size bigint NOT NULL,
+    md5sum text NOT NULL,
+    sha1sum text NOT NULL,
+    sha256sum text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    processed boolean DEFAULT false
+);
+
+
+ALTER TABLE public.changes_pending_files OWNER TO dak;
+
+--
+-- Name: changes_pending_files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE changes_pending_files_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.changes_pending_files_id_seq OWNER TO dak;
+
+--
+-- Name: changes_pending_files_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE changes_pending_files_id_seq OWNED BY changes_pending_files.id;
+
+
+--
+-- Name: changes_pending_files_map; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes_pending_files_map (
+    file_id integer NOT NULL,
+    change_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.changes_pending_files_map OWNER TO dak;
+
+--
+-- Name: changes_pending_source; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes_pending_source (
+    id integer NOT NULL,
+    change_id integer NOT NULL,
+    source text NOT NULL,
+    version debversion NOT NULL,
+    maintainer_id integer NOT NULL,
+    changedby_id integer NOT NULL,
+    sig_fpr integer NOT NULL,
+    dm_upload_allowed boolean DEFAULT false NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.changes_pending_source OWNER TO dak;
+
+--
+-- Name: changes_pending_source_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes_pending_source_files (
+    pending_source_id integer NOT NULL,
+    pending_file_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.changes_pending_source_files OWNER TO dak;
+
+--
+-- Name: changes_pending_source_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE changes_pending_source_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.changes_pending_source_id_seq OWNER TO dak;
+
+--
+-- Name: changes_pending_source_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE changes_pending_source_id_seq OWNED BY changes_pending_source.id;
+
+
+--
+-- Name: changes_pool_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE changes_pool_files (
+    changeid integer NOT NULL,
+    fileid integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.changes_pool_files OWNER TO dak;
+
+--
+-- Name: component_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE component_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.component_id_seq OWNER TO dak;
+
+--
+-- Name: component; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE component (
+    id integer DEFAULT nextval('component_id_seq'::regclass) NOT NULL,
+    name text NOT NULL,
+    description text,
+    meets_dfsg boolean,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.component OWNER TO dak;
+
+--
+-- Name: config; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE config (
+    id integer NOT NULL,
+    name text NOT NULL,
+    value text,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.config OWNER TO dak;
+
+--
+-- Name: config_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE config_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.config_id_seq OWNER TO dak;
+
+--
+-- Name: config_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE config_id_seq OWNED BY config.id;
+
+
+--
+-- Name: dsc_files_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE dsc_files_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.dsc_files_id_seq OWNER TO dak;
+
+--
+-- Name: dsc_files; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE dsc_files (
+    id integer DEFAULT nextval('dsc_files_id_seq'::regclass) NOT NULL,
+    source integer NOT NULL,
+    file integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.dsc_files OWNER TO dak;
+
+--
+-- Name: external_overrides; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE external_overrides (
+    package text NOT NULL,
+    key text NOT NULL,
+    value text NOT NULL,
+    suite integer NOT NULL,
+    component integer NOT NULL
+);
+
+
+ALTER TABLE public.external_overrides OWNER TO dak;
+
+--
+-- Name: extra_src_references; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE extra_src_references (
+    bin_id integer NOT NULL,
+    src_id integer NOT NULL
+);
+
+
+ALTER TABLE public.extra_src_references OWNER TO dak;
+
+--
+-- Name: file_arch_suite; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW file_arch_suite AS
+    SELECT f.id AS file, f.size, b.architecture, s.id AS suite FROM files f, binaries b, bin_associations ba, suite s WHERE (((f.id = b.file) AND (b.id = ba.bin)) AND (ba.suite = s.id));
+
+
+ALTER TABLE public.file_arch_suite OWNER TO dak;
+
+--
+-- Name: fingerprint_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE fingerprint_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.fingerprint_id_seq OWNER TO dak;
+
+--
+-- Name: fingerprint; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE fingerprint (
+    id integer DEFAULT nextval('fingerprint_id_seq'::regclass) NOT NULL,
+    fingerprint text NOT NULL,
+    uid integer,
+    keyring integer,
+    source_acl_id integer,
+    binary_acl_id integer,
+    binary_reject boolean DEFAULT true NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.fingerprint OWNER TO dak;
+
+--
+-- Name: keyring_acl_map; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE keyring_acl_map (
+    id integer NOT NULL,
+    keyring_id integer NOT NULL,
+    architecture_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.keyring_acl_map OWNER TO dak;
+
+--
+-- Name: keyring_acl_map_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE keyring_acl_map_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.keyring_acl_map_id_seq OWNER TO dak;
+
+--
+-- Name: keyring_acl_map_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE keyring_acl_map_id_seq OWNED BY keyring_acl_map.id;
+
+
+--
+-- Name: keyrings; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE keyrings (
+    id integer NOT NULL,
+    name text NOT NULL,
+    default_source_acl_id integer,
+    default_binary_acl_id integer,
+    default_binary_reject boolean DEFAULT true NOT NULL,
+    priority integer DEFAULT 100 NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    active boolean DEFAULT true
+);
+
+
+ALTER TABLE public.keyrings OWNER TO dak;
+
+--
+-- Name: keyrings_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE keyrings_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.keyrings_id_seq OWNER TO dak;
+
+--
+-- Name: keyrings_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE keyrings_id_seq OWNED BY keyrings.id;
+
+
+--
+-- Name: maintainer_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE maintainer_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.maintainer_id_seq OWNER TO dak;
+
+--
+-- Name: maintainer; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE maintainer (
+    id integer DEFAULT nextval('maintainer_id_seq'::regclass) NOT NULL,
+    name text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.maintainer OWNER TO dak;
+
+--
+-- Name: metadata_keys; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE metadata_keys (
+    key_id integer NOT NULL,
+    key text NOT NULL,
+    ordering integer DEFAULT 0 NOT NULL
+);
+
+
+ALTER TABLE public.metadata_keys OWNER TO dak;
+
+--
+-- Name: metadata_keys_key_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE metadata_keys_key_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.metadata_keys_key_id_seq OWNER TO dak;
+
+--
+-- Name: metadata_keys_key_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE metadata_keys_key_id_seq OWNED BY metadata_keys.key_id;
+
+
+--
+-- Name: new_comments; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE new_comments (
+    id integer NOT NULL,
+    package text NOT NULL,
+    version text NOT NULL,
+    comment text NOT NULL,
+    author text NOT NULL,
+    notedate timestamp with time zone DEFAULT now() NOT NULL,
+    trainee boolean DEFAULT false NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.new_comments OWNER TO dak;
+
+--
+-- Name: new_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE new_comments_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.new_comments_id_seq OWNER TO dak;
+
+--
+-- Name: new_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE new_comments_id_seq OWNED BY new_comments.id;
+
+
+--
+-- Name: newest_all_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW newest_all_associations AS
+    SELECT binaries_suite_arch.package, max(binaries_suite_arch.version) AS version, binaries_suite_arch.suite, binaries_suite_arch.architecture FROM binaries_suite_arch WHERE (binaries_suite_arch.architecture = 2) GROUP BY binaries_suite_arch.package, binaries_suite_arch.suite, binaries_suite_arch.architecture;
+
+
+ALTER TABLE public.newest_all_associations OWNER TO dak;
+
+--
+-- Name: newest_any_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW newest_any_associations AS
+    SELECT binaries_suite_arch.package, max(binaries_suite_arch.version) AS version, binaries_suite_arch.suite, binaries_suite_arch.architecture FROM binaries_suite_arch WHERE (binaries_suite_arch.architecture > 2) GROUP BY binaries_suite_arch.package, binaries_suite_arch.suite, binaries_suite_arch.architecture;
+
+
+ALTER TABLE public.newest_any_associations OWNER TO dak;
+
+--
+-- Name: source_suite; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW source_suite AS
+    SELECT src_associations.id, source.id AS src, source.source, source.version, src_associations.suite, suite.suite_name, source.install_date FROM ((source JOIN src_associations ON ((source.id = src_associations.source))) JOIN suite ON ((suite.id = src_associations.suite)));
+
+
+ALTER TABLE public.source_suite OWNER TO dak;
+
+--
+-- Name: newest_source; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW newest_source AS
+    SELECT source_suite.source, max(source_suite.version) AS version, source_suite.suite FROM source_suite GROUP BY source_suite.source, source_suite.suite;
+
+
+ALTER TABLE public.newest_source OWNER TO dak;
+
+--
+-- Name: newest_src_association; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW newest_src_association AS
+    SELECT source_suite.id, source_suite.src, source_suite.source, source_suite.version, source_suite.suite FROM (source_suite JOIN newest_source USING (source, version, suite));
+
+
+ALTER TABLE public.newest_src_association OWNER TO dak;
+
+--
+-- Name: obsolete_all_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW obsolete_all_associations AS
+    SELECT almost.id, almost.bin, almost.package, almost.version, almost.suite FROM (almost_obsolete_all_associations almost JOIN newest_all_associations newest ON ((((almost.package = newest.package) AND (almost.version < newest.version)) AND (almost.suite = newest.suite))));
+
+
+ALTER TABLE public.obsolete_all_associations OWNER TO dak;
+
+--
+-- Name: obsolete_any_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW obsolete_any_associations AS
+    SELECT binaries_suite_arch.id, binaries_suite_arch.architecture, binaries_suite_arch.version, binaries_suite_arch.package, binaries_suite_arch.suite FROM (binaries_suite_arch JOIN newest_any_associations ON (((((binaries_suite_arch.architecture = newest_any_associations.architecture) AND (binaries_suite_arch.package = newest_any_associations.package)) AND (binaries_suite_arch.suite = newest_any_associations.suite)) AND (binaries_suite_arch.version <> newest_any_associations.version))));
+
+
+ALTER TABLE public.obsolete_any_associations OWNER TO dak;
+
+--
+-- Name: obsolete_any_by_all_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW obsolete_any_by_all_associations AS
+    SELECT binaries_suite_arch.id, binaries_suite_arch.package, binaries_suite_arch.version, binaries_suite_arch.suite, binaries_suite_arch.architecture FROM (binaries_suite_arch JOIN newest_all_associations ON (((((binaries_suite_arch.package = newest_all_associations.package) AND (binaries_suite_arch.version < newest_all_associations.version)) AND (binaries_suite_arch.suite = newest_all_associations.suite)) AND (binaries_suite_arch.architecture > 2))));
+
+
+ALTER TABLE public.obsolete_any_by_all_associations OWNER TO dak;
+
+--
+-- Name: obsolete_src_associations; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW obsolete_src_associations AS
+    SELECT almost.id, almost.src, almost.source, almost.version, almost.suite FROM (almost_obsolete_src_associations almost JOIN newest_src_association newest ON ((((almost.source = newest.source) AND (almost.version < newest.version)) AND (almost.suite = newest.suite))));
+
+
+ALTER TABLE public.obsolete_src_associations OWNER TO dak;
+
+--
+-- Name: override; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE override (
+    package text NOT NULL,
+    suite integer NOT NULL,
+    component integer NOT NULL,
+    priority integer,
+    section integer NOT NULL,
+    type integer NOT NULL,
+    maintainer text,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.override OWNER TO dak;
+
+--
+-- Name: override_type_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE override_type_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.override_type_id_seq OWNER TO dak;
+
+--
+-- Name: override_type; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE override_type (
+    id integer DEFAULT nextval('override_type_id_seq'::regclass) NOT NULL,
+    type text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.override_type OWNER TO dak;
+
+--
+-- Name: policy_queue; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE policy_queue (
+    id integer NOT NULL,
+    queue_name text NOT NULL,
+    path text NOT NULL,
+    perms character(4) DEFAULT '0660'::bpchar NOT NULL,
+    change_perms character(4) DEFAULT '0660'::bpchar NOT NULL,
+    generate_metadata boolean DEFAULT false NOT NULL,
+    origin text,
+    label text,
+    releasedescription text,
+    signingkey text,
+    stay_of_execution integer DEFAULT 86400 NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    send_to_build_queues boolean DEFAULT false NOT NULL,
+    CONSTRAINT policy_queue_change_perms_check CHECK ((change_perms ~ similar_escape('[0-7][0-7][0-7][0-7]'::text, NULL::text))),
+    CONSTRAINT policy_queue_meta_sanity_check CHECK (((generate_metadata IS FALSE) OR (((origin IS NOT NULL) AND (label IS NOT NULL)) AND (releasedescription IS NOT NULL)))),
+    CONSTRAINT policy_queue_perms_check CHECK ((perms ~ similar_escape('[0-7][0-7][0-7][0-7]'::text, NULL::text))),
+    CONSTRAINT policy_queue_stay_of_execution_check CHECK ((stay_of_execution >= 0))
+);
+
+
+ALTER TABLE public.policy_queue OWNER TO dak;
+
+--
+-- Name: policy_queue_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE policy_queue_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.policy_queue_id_seq OWNER TO dak;
+
+--
+-- Name: policy_queue_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE policy_queue_id_seq OWNED BY policy_queue.id;
+
+
+--
+-- Name: priority_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE priority_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.priority_id_seq OWNER TO dak;
+
+--
+-- Name: priority; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE priority (
+    id integer DEFAULT nextval('priority_id_seq'::regclass) NOT NULL,
+    priority text NOT NULL,
+    level integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.priority OWNER TO dak;
+
+--
+-- Name: section_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE section_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    MAXVALUE 2147483647
+    CACHE 1;
+
+
+ALTER TABLE public.section_id_seq OWNER TO dak;
+
+--
+-- Name: section; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE section (
+    id integer DEFAULT nextval('section_id_seq'::regclass) NOT NULL,
+    section text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.section OWNER TO dak;
+
+--
+-- Name: source_acl; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE source_acl (
+    id integer NOT NULL,
+    access_level text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.source_acl OWNER TO dak;
+
+--
+-- Name: source_acl_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE source_acl_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.source_acl_id_seq OWNER TO dak;
+
+--
+-- Name: source_acl_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE source_acl_id_seq OWNED BY source_acl.id;
+
+
+--
+-- Name: source_metadata; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE source_metadata (
+    src_id integer NOT NULL,
+    key_id integer NOT NULL,
+    value text NOT NULL
+);
+
+
+ALTER TABLE public.source_metadata OWNER TO dak;
+
+--
+-- Name: src_contents; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE src_contents (
+    file text NOT NULL,
+    source_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.src_contents OWNER TO dak;
+
+--
+-- Name: src_format; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE src_format (
+    id integer NOT NULL,
+    format_name text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.src_format OWNER TO dak;
+
+--
+-- Name: src_format_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE src_format_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.src_format_id_seq OWNER TO dak;
+
+--
+-- Name: src_format_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE src_format_id_seq OWNED BY src_format.id;
+
+
+--
+-- Name: src_uploaders; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE src_uploaders (
+    id integer NOT NULL,
+    source integer NOT NULL,
+    maintainer integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.src_uploaders OWNER TO dak;
+
+--
+-- Name: src_uploaders_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE src_uploaders_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.src_uploaders_id_seq OWNER TO dak;
+
+--
+-- Name: src_uploaders_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE src_uploaders_id_seq OWNED BY src_uploaders.id;
+
+
+--
+-- Name: suite_architectures; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE suite_architectures (
+    suite integer NOT NULL,
+    architecture integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.suite_architectures OWNER TO dak;
+
+--
+-- Name: suite_arch_by_name; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW suite_arch_by_name AS
+    SELECT suite.suite_name AS suite, a.arch_string AS arch FROM ((suite_architectures sa JOIN architecture a ON ((sa.architecture = a.id))) JOIN suite ON ((sa.suite = suite.id))) WHERE (a.arch_string <> ALL (ARRAY['all'::text, 'source'::text]));
+
+
+ALTER TABLE public.suite_arch_by_name OWNER TO dak;
+
+--
+-- Name: suite_build_queue_copy; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE suite_build_queue_copy (
+    suite integer NOT NULL,
+    build_queue_id integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.suite_build_queue_copy OWNER TO dak;
+
+--
+-- Name: suite_src_formats; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE suite_src_formats (
+    suite integer NOT NULL,
+    src_format integer NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.suite_src_formats OWNER TO dak;
+
+--
+-- Name: uid_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE uid_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.uid_id_seq OWNER TO dak;
+
+--
+-- Name: uid; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE uid (
+    id integer DEFAULT nextval('uid_id_seq'::regclass) NOT NULL,
+    uid text NOT NULL,
+    name text,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL
+);
+
+
+ALTER TABLE public.uid OWNER TO dak;
+
+--
+-- Name: upload_blocks; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE upload_blocks (
+    id integer NOT NULL,
+    source text NOT NULL,
+    version debversion,
+    fingerprint_id integer,
+    uid_id integer,
+    reason text NOT NULL,
+    created timestamp with time zone DEFAULT now() NOT NULL,
+    modified timestamp with time zone DEFAULT now() NOT NULL,
+    CONSTRAINT upload_blocks_check CHECK (((fingerprint_id IS NOT NULL) OR (uid_id IS NOT NULL)))
+);
+
+
+ALTER TABLE public.upload_blocks OWNER TO dak;
+
+--
+-- Name: upload_blocks_id_seq; Type: SEQUENCE; Schema: public; Owner: dak
+--
+
+CREATE SEQUENCE upload_blocks_id_seq
+    START WITH 1
+    INCREMENT BY 1
+    NO MINVALUE
+    NO MAXVALUE
+    CACHE 1;
+
+
+ALTER TABLE public.upload_blocks_id_seq OWNER TO dak;
+
+--
+-- Name: upload_blocks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: dak
+--
+
+ALTER SEQUENCE upload_blocks_id_seq OWNED BY upload_blocks.id;
+
+
+--
+-- Name: version_check; Type: TABLE; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE TABLE version_check (
+    suite integer NOT NULL,
+    "check" text NOT NULL,
+    reference integer NOT NULL,
+    CONSTRAINT version_check_check_check CHECK (("check" = ANY (ARRAY['Enhances'::text, 'MustBeNewerThan'::text, 'MustBeOlderThan'::text])))
+);
+
+
+ALTER TABLE public.version_check OWNER TO dak;
+
+--
+-- Name: version_checks; Type: VIEW; Schema: public; Owner: dak
+--
+
+CREATE VIEW version_checks AS
+    SELECT s.suite_name AS source_suite, v."check" AS condition, t.suite_name AS target_suite FROM ((suite s JOIN version_check v ON ((s.id = v.suite))) JOIN suite t ON ((v.reference = t.id))) ORDER BY s.suite_name, v."check", t.suite_name;
+
+
+ALTER TABLE public.version_checks OWNER TO dak;
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE binary_acl ALTER COLUMN id SET DEFAULT nextval('binary_acl_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE binary_acl_map ALTER COLUMN id SET DEFAULT nextval('binary_acl_map_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE build_queue ALTER COLUMN id SET DEFAULT nextval('build_queue_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE build_queue_files ALTER COLUMN id SET DEFAULT nextval('build_queue_files_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE changelogs_text ALTER COLUMN id SET DEFAULT nextval('changelogs_text_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE changes ALTER COLUMN id SET DEFAULT nextval('changes_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE changes_pending_binaries ALTER COLUMN id SET DEFAULT nextval('changes_pending_binaries_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE changes_pending_files ALTER COLUMN id SET DEFAULT nextval('changes_pending_files_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE changes_pending_source ALTER COLUMN id SET DEFAULT nextval('changes_pending_source_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE config ALTER COLUMN id SET DEFAULT nextval('config_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE keyring_acl_map ALTER COLUMN id SET DEFAULT nextval('keyring_acl_map_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE keyrings ALTER COLUMN id SET DEFAULT nextval('keyrings_id_seq'::regclass);
+
+
+--
+-- Name: key_id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE metadata_keys ALTER COLUMN key_id SET DEFAULT nextval('metadata_keys_key_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE new_comments ALTER COLUMN id SET DEFAULT nextval('new_comments_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE policy_queue ALTER COLUMN id SET DEFAULT nextval('policy_queue_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE source_acl ALTER COLUMN id SET DEFAULT nextval('source_acl_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE src_format ALTER COLUMN id SET DEFAULT nextval('src_format_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE src_uploaders ALTER COLUMN id SET DEFAULT nextval('src_uploaders_id_seq'::regclass);
+
+
+--
+-- Name: id; Type: DEFAULT; Schema: public; Owner: dak
+--
+
+ALTER TABLE upload_blocks ALTER COLUMN id SET DEFAULT nextval('upload_blocks_id_seq'::regclass);
+
+
+--
+-- Name: architecture_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY architecture
+    ADD CONSTRAINT architecture_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: archive_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY archive
+    ADD CONSTRAINT archive_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: bin_associations_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY bin_associations
+    ADD CONSTRAINT bin_associations_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: bin_contents_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY bin_contents
+    ADD CONSTRAINT bin_contents_pkey PRIMARY KEY (file, binary_id);
+
+
+--
+-- Name: binaries_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY binaries_metadata
+    ADD CONSTRAINT binaries_metadata_pkey PRIMARY KEY (bin_id, key_id);
+
+
+--
+-- Name: binaries_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY binaries
+    ADD CONSTRAINT binaries_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: binary_acl_access_level_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY binary_acl
+    ADD CONSTRAINT binary_acl_access_level_key UNIQUE (access_level);
+
+
+--
+-- Name: binary_acl_map_fingerprint_id_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY binary_acl_map
+    ADD CONSTRAINT binary_acl_map_fingerprint_id_key UNIQUE (fingerprint_id, architecture_id);
+
+
+--
+-- Name: binary_acl_map_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY binary_acl_map
+    ADD CONSTRAINT binary_acl_map_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: binary_acl_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY binary_acl
+    ADD CONSTRAINT binary_acl_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: build_queue_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY build_queue
+    ADD CONSTRAINT build_queue_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: build_queue_policy_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY build_queue_policy_files
+    ADD CONSTRAINT build_queue_policy_files_pkey PRIMARY KEY (build_queue_id, file_id);
+
+
+--
+-- Name: build_queue_queue_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY build_queue
+    ADD CONSTRAINT build_queue_queue_name_key UNIQUE (queue_name);
+
+
+--
+-- Name: changelogs_text_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changelogs_text
+    ADD CONSTRAINT changelogs_text_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: changes_pending_binaries_package_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_package_key UNIQUE (package, version, architecture_id);
+
+
+--
+-- Name: changes_pending_binaries_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: changes_pending_files_filename_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_files
+    ADD CONSTRAINT changes_pending_files_filename_key UNIQUE (filename);
+
+
+--
+-- Name: changes_pending_files_map_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_files_map
+    ADD CONSTRAINT changes_pending_files_map_pkey PRIMARY KEY (file_id, change_id);
+
+
+--
+-- Name: changes_pending_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_files
+    ADD CONSTRAINT changes_pending_files_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: changes_pending_source_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_source_files
+    ADD CONSTRAINT changes_pending_source_files_pkey PRIMARY KEY (pending_source_id, pending_file_id);
+
+
+--
+-- Name: changes_pending_source_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pending_source
+    ADD CONSTRAINT changes_pending_source_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: changes_pool_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes_pool_files
+    ADD CONSTRAINT changes_pool_files_pkey PRIMARY KEY (changeid, fileid);
+
+
+--
+-- Name: component_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY component
+    ADD CONSTRAINT component_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: config_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY config
+    ADD CONSTRAINT config_name_key UNIQUE (name);
+
+
+--
+-- Name: config_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY config
+    ADD CONSTRAINT config_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: dsc_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY dsc_files
+    ADD CONSTRAINT dsc_files_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: external_overrides_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY external_overrides
+    ADD CONSTRAINT external_overrides_pkey PRIMARY KEY (suite, component, package, key);
+
+
+--
+-- Name: extra_src_references_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY extra_src_references
+    ADD CONSTRAINT extra_src_references_pkey PRIMARY KEY (bin_id, src_id);
+
+
+--
+-- Name: files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY files
+    ADD CONSTRAINT files_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: fingerprint_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY fingerprint
+    ADD CONSTRAINT fingerprint_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: keyring_acl_map_keyring_id_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY keyring_acl_map
+    ADD CONSTRAINT keyring_acl_map_keyring_id_key UNIQUE (keyring_id, architecture_id);
+
+
+--
+-- Name: keyring_acl_map_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY keyring_acl_map
+    ADD CONSTRAINT keyring_acl_map_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: keyrings_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY keyrings
+    ADD CONSTRAINT keyrings_name_key UNIQUE (name);
+
+
+--
+-- Name: keyrings_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY keyrings
+    ADD CONSTRAINT keyrings_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: known_changes_changesname_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes
+    ADD CONSTRAINT known_changes_changesname_key UNIQUE (changesname);
+
+
+--
+-- Name: known_changes_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY changes
+    ADD CONSTRAINT known_changes_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: location_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY location
+    ADD CONSTRAINT location_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: maintainer_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY maintainer
+    ADD CONSTRAINT maintainer_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: metadata_keys_key_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY metadata_keys
+    ADD CONSTRAINT metadata_keys_key_key UNIQUE (key);
+
+
+--
+-- Name: metadata_keys_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY metadata_keys
+    ADD CONSTRAINT metadata_keys_pkey PRIMARY KEY (key_id);
+
+
+--
+-- Name: new_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY new_comments
+    ADD CONSTRAINT new_comments_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: override_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY override
+    ADD CONSTRAINT override_pkey PRIMARY KEY (suite, component, package, type);
+
+
+--
+-- Name: override_type_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY override_type
+    ADD CONSTRAINT override_type_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: policy_queue_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY policy_queue
+    ADD CONSTRAINT policy_queue_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: policy_queue_queue_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY policy_queue
+    ADD CONSTRAINT policy_queue_queue_name_key UNIQUE (queue_name);
+
+
+--
+-- Name: priority_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY priority
+    ADD CONSTRAINT priority_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: queue_files_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY build_queue_files
+    ADD CONSTRAINT queue_files_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: section_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY section
+    ADD CONSTRAINT section_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: source_acl_access_level_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY source_acl
+    ADD CONSTRAINT source_acl_access_level_key UNIQUE (access_level);
+
+
+--
+-- Name: source_acl_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY source_acl
+    ADD CONSTRAINT source_acl_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: source_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY source_metadata
+    ADD CONSTRAINT source_metadata_pkey PRIMARY KEY (src_id, key_id);
+
+
+--
+-- Name: source_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY source
+    ADD CONSTRAINT source_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: src_associations_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY src_associations
+    ADD CONSTRAINT src_associations_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: src_contents_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY src_contents
+    ADD CONSTRAINT src_contents_pkey PRIMARY KEY (file, source_id);
+
+
+--
+-- Name: src_format_format_name_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY src_format
+    ADD CONSTRAINT src_format_format_name_key UNIQUE (format_name);
+
+
+--
+-- Name: src_format_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY src_format
+    ADD CONSTRAINT src_format_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: src_uploaders_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY src_uploaders
+    ADD CONSTRAINT src_uploaders_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: src_uploaders_source_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY src_uploaders
+    ADD CONSTRAINT src_uploaders_source_key UNIQUE (source, maintainer);
+
+
+--
+-- Name: suite_architectures_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY suite_architectures
+    ADD CONSTRAINT suite_architectures_pkey PRIMARY KEY (suite, architecture);
+
+
+--
+-- Name: suite_name_unique; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY suite
+    ADD CONSTRAINT suite_name_unique UNIQUE (suite_name);
+
+
+--
+-- Name: suite_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY suite
+    ADD CONSTRAINT suite_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: suite_queue_copy_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY suite_build_queue_copy
+    ADD CONSTRAINT suite_queue_copy_pkey PRIMARY KEY (suite, build_queue_id);
+
+
+--
+-- Name: suite_src_formats_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY suite_src_formats
+    ADD CONSTRAINT suite_src_formats_pkey PRIMARY KEY (suite, src_format);
+
+
+--
+-- Name: suite_src_formats_suite_key; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY suite_src_formats
+    ADD CONSTRAINT suite_src_formats_suite_key UNIQUE (suite, src_format);
+
+
+--
+-- Name: uid_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY uid
+    ADD CONSTRAINT uid_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: upload_blocks_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY upload_blocks
+    ADD CONSTRAINT upload_blocks_pkey PRIMARY KEY (id);
+
+
+--
+-- Name: version_check_pkey; Type: CONSTRAINT; Schema: public; Owner: dak; Tablespace: 
+--
+
+ALTER TABLE ONLY version_check
+    ADD CONSTRAINT version_check_pkey PRIMARY KEY (suite, "check", reference);
+
+
+--
+-- Name: architecture_arch_string_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX architecture_arch_string_key ON architecture USING btree (arch_string);
+
+
+--
+-- Name: archive_name_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX archive_name_key ON archive USING btree (name);
+
+
+--
+-- Name: bin_associations_bin; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX bin_associations_bin ON bin_associations USING btree (bin);
+
+
+--
+-- Name: bin_associations_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX bin_associations_suite_key ON bin_associations USING btree (suite, bin);
+
+
+--
+-- Name: binaries_architecture_idx; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_architecture_idx ON binaries USING btree (architecture);
+
+
+--
+-- Name: binaries_by_package; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_by_package ON binaries USING btree (id, package);
+
+
+--
+-- Name: binaries_file_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX binaries_file_key ON binaries USING btree (file);
+
+
+--
+-- Name: binaries_files; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_files ON binaries USING btree (file);
+
+
+--
+-- Name: binaries_fingerprint; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_fingerprint ON binaries USING btree (sig_fpr);
+
+
+--
+-- Name: binaries_id; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX binaries_id ON binaries USING btree (id);
+
+
+--
+-- Name: binaries_maintainer; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_maintainer ON binaries USING btree (maintainer);
+
+
+--
+-- Name: binaries_metadata_depends; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_metadata_depends ON binaries_metadata USING btree (bin_id) WHERE (key_id = 44);
+
+
+--
+-- Name: binaries_metadata_provides; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX binaries_metadata_provides ON binaries_metadata USING btree (bin_id) WHERE (key_id = 51);
+
+
+--
+-- Name: binaries_package_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX binaries_package_key ON binaries USING btree (package, version, architecture);
+
+
+--
+-- Name: changesapproved_for; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changesapproved_for ON changes USING btree (approved_for);
+
+
+--
+-- Name: changesdistribution_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changesdistribution_ind ON changes USING btree (distribution);
+
+
+--
+-- Name: changesin_queue; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changesin_queue ON changes USING btree (in_queue);
+
+
+--
+-- Name: changesin_queue_approved_for; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changesin_queue_approved_for ON changes USING btree (in_queue, approved_for);
+
+
+--
+-- Name: changesname_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changesname_ind ON changes USING btree (changesname);
+
+
+--
+-- Name: changessource_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changessource_ind ON changes USING btree (source);
+
+
+--
+-- Name: changestimestamp_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changestimestamp_ind ON changes USING btree (seen);
+
+
+--
+-- Name: changesurgency_ind; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX changesurgency_ind ON changes USING btree (urgency);
+
+
+--
+-- Name: component_name_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX component_name_key ON component USING btree (name);
+
+
+--
+-- Name: dsc_files_file; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX dsc_files_file ON dsc_files USING btree (file);
+
+
+--
+-- Name: dsc_files_source_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX dsc_files_source_key ON dsc_files USING btree (source, file);
+
+
+--
+-- Name: files_filename_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX files_filename_key ON files USING btree (filename, location);
+
+
+--
+-- Name: files_last_used; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX files_last_used ON files USING btree (last_used);
+
+
+--
+-- Name: fingerprint_fingerprint_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX fingerprint_fingerprint_key ON fingerprint USING btree (fingerprint);
+
+
+--
+-- Name: ind_bin_contents_binary; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX ind_bin_contents_binary ON bin_contents USING btree (binary_id);
+
+
+--
+-- Name: jjt; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX jjt ON files USING btree (id);
+
+
+--
+-- Name: jjt2; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX jjt2 ON files USING btree (location);
+
+
+--
+-- Name: jjt3; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX jjt3 ON files USING btree (id, location);
+
+
+--
+-- Name: jjt4; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX jjt4 ON binaries USING btree (source);
+
+
+--
+-- Name: jjt5; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX jjt5 ON binaries USING btree (id, source);
+
+
+--
+-- Name: jjt_override_type_idx; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX jjt_override_type_idx ON override USING btree (type);
+
+
+--
+-- Name: maintainer_name_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX maintainer_name_key ON maintainer USING btree (name);
+
+
+--
+-- Name: override_by_package; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX override_by_package ON override USING btree (package);
+
+
+--
+-- Name: override_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX override_suite_key ON override USING btree (suite, component, package, type);
+
+
+--
+-- Name: override_type_type_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX override_type_type_key ON override_type USING btree (type);
+
+
+--
+-- Name: priority_level_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX priority_level_key ON priority USING btree (level);
+
+
+--
+-- Name: priority_priority_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX priority_priority_key ON priority USING btree (priority);
+
+
+--
+-- Name: section_section_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX section_section_key ON section USING btree (section);
+
+
+--
+-- Name: source_file_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX source_file_key ON source USING btree (file);
+
+
+--
+-- Name: source_fingerprint; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX source_fingerprint ON source USING btree (sig_fpr);
+
+
+--
+-- Name: source_maintainer; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX source_maintainer ON source USING btree (maintainer);
+
+
+--
+-- Name: source_source_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX source_source_key ON source USING btree (source, version);
+
+
+--
+-- Name: src_associations_source; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX src_associations_source ON src_associations USING btree (source);
+
+
+--
+-- Name: src_associations_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX src_associations_suite_key ON src_associations USING btree (suite, source);
+
+
+--
+-- Name: src_contents_source_id_idx; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX src_contents_source_id_idx ON src_contents USING btree (source_id);
+
+
+--
+-- Name: suite_architectures_suite_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX suite_architectures_suite_key ON suite_architectures USING btree (suite, architecture);
+
+
+--
+-- Name: suite_hash; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE INDEX suite_hash ON suite USING hash (suite_name);
+
+
+--
+-- Name: uid_uid_key; Type: INDEX; Schema: public; Owner: dak; Tablespace: 
+--
+
+CREATE UNIQUE INDEX uid_uid_key ON uid USING btree (uid);
+
+
+--
+-- Name: modified_architecture; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_architecture BEFORE UPDATE ON architecture FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_archive; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_archive BEFORE UPDATE ON archive FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_bin_associations; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_bin_associations BEFORE UPDATE ON bin_associations FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_bin_contents; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_bin_contents BEFORE UPDATE ON bin_contents FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_binaries; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_binaries BEFORE UPDATE ON binaries FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_binary_acl; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_binary_acl BEFORE UPDATE ON binary_acl FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_binary_acl_map; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_binary_acl_map BEFORE UPDATE ON binary_acl_map FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_build_queue; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_build_queue BEFORE UPDATE ON build_queue FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_build_queue_files; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_build_queue_files BEFORE UPDATE ON build_queue_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes BEFORE UPDATE ON changes FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes_pending_binaries; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes_pending_binaries BEFORE UPDATE ON changes_pending_binaries FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes_pending_files; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes_pending_files BEFORE UPDATE ON changes_pending_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes_pending_files_map; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes_pending_files_map BEFORE UPDATE ON changes_pending_files_map FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes_pending_source; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes_pending_source BEFORE UPDATE ON changes_pending_source FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes_pending_source_files; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes_pending_source_files BEFORE UPDATE ON changes_pending_source_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_changes_pool_files; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_changes_pool_files BEFORE UPDATE ON changes_pool_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_component; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_component BEFORE UPDATE ON component FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_config; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_config BEFORE UPDATE ON config FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_dsc_files; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_dsc_files BEFORE UPDATE ON dsc_files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_files; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_files BEFORE UPDATE ON files FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_fingerprint; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_fingerprint BEFORE UPDATE ON fingerprint FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_keyring_acl_map; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_keyring_acl_map BEFORE UPDATE ON keyring_acl_map FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_keyrings; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_keyrings BEFORE UPDATE ON keyrings FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_location; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_location BEFORE UPDATE ON location FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_maintainer; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_maintainer BEFORE UPDATE ON maintainer FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_new_comments; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_new_comments BEFORE UPDATE ON new_comments FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_override; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_override BEFORE UPDATE ON override FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_override_type; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_override_type BEFORE UPDATE ON override_type FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_policy_queue; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_policy_queue BEFORE UPDATE ON policy_queue FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_priority; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_priority BEFORE UPDATE ON priority FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_section; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_section BEFORE UPDATE ON section FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_source; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_source BEFORE UPDATE ON source FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_source_acl; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_source_acl BEFORE UPDATE ON source_acl FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_src_associations; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_src_associations BEFORE UPDATE ON src_associations FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_src_contents; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_src_contents BEFORE UPDATE ON src_contents FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_src_format; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_src_format BEFORE UPDATE ON src_format FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_src_uploaders; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_src_uploaders BEFORE UPDATE ON src_uploaders FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_suite; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_suite BEFORE UPDATE ON suite FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_suite_architectures; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_suite_architectures BEFORE UPDATE ON suite_architectures FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_suite_build_queue_copy; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_suite_build_queue_copy BEFORE UPDATE ON suite_build_queue_copy FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_suite_src_formats; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_suite_src_formats BEFORE UPDATE ON suite_src_formats FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_uid; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_uid BEFORE UPDATE ON uid FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: modified_upload_blocks; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER modified_upload_blocks BEFORE UPDATE ON upload_blocks FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified();
+
+
+--
+-- Name: trigger_bin_associations_audit; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER trigger_bin_associations_audit AFTER INSERT OR DELETE ON bin_associations FOR EACH ROW EXECUTE PROCEDURE trigger_binsrc_assoc_update();
+
+
+--
+-- Name: trigger_override_audit; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER trigger_override_audit AFTER UPDATE ON override FOR EACH ROW EXECUTE PROCEDURE trigger_override_update();
+
+
+--
+-- Name: trigger_src_associations_audit; Type: TRIGGER; Schema: public; Owner: dak
+--
+
+CREATE TRIGGER trigger_src_associations_audit AFTER INSERT OR DELETE ON src_associations FOR EACH ROW EXECUTE PROCEDURE trigger_binsrc_assoc_update();
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY fingerprint
+    ADD CONSTRAINT "$1" FOREIGN KEY (keyring) REFERENCES keyrings(id);
+
+
+--
+-- Name: bin_associations_bin; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY bin_associations
+    ADD CONSTRAINT bin_associations_bin FOREIGN KEY (bin) REFERENCES binaries(id) MATCH FULL;
+
+
+--
+-- Name: bin_associations_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY bin_associations
+    ADD CONSTRAINT bin_associations_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
+
+
+--
+-- Name: bin_contents_bin_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY bin_contents
+    ADD CONSTRAINT bin_contents_bin_fkey FOREIGN KEY (binary_id) REFERENCES binaries(id) ON DELETE CASCADE;
+
+
+--
+-- Name: binaries_architecture; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries
+    ADD CONSTRAINT binaries_architecture FOREIGN KEY (architecture) REFERENCES architecture(id) MATCH FULL;
+
+
+--
+-- Name: binaries_file; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries
+    ADD CONSTRAINT binaries_file FOREIGN KEY (file) REFERENCES files(id) MATCH FULL;
+
+
+--
+-- Name: binaries_maintainer; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries
+    ADD CONSTRAINT binaries_maintainer FOREIGN KEY (maintainer) REFERENCES maintainer(id) MATCH FULL;
+
+
+--
+-- Name: binaries_metadata_bin_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries_metadata
+    ADD CONSTRAINT binaries_metadata_bin_id_fkey FOREIGN KEY (bin_id) REFERENCES binaries(id) ON DELETE CASCADE;
+
+
+--
+-- Name: binaries_metadata_key_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries_metadata
+    ADD CONSTRAINT binaries_metadata_key_id_fkey FOREIGN KEY (key_id) REFERENCES metadata_keys(key_id);
+
+
+--
+-- Name: binaries_sig_fpr; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries
+    ADD CONSTRAINT binaries_sig_fpr FOREIGN KEY (sig_fpr) REFERENCES fingerprint(id) MATCH FULL;
+
+
+--
+-- Name: binaries_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binaries
+    ADD CONSTRAINT binaries_source FOREIGN KEY (source) REFERENCES source(id) MATCH FULL;
+
+
+--
+-- Name: binary_acl_map_architecture_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binary_acl_map
+    ADD CONSTRAINT binary_acl_map_architecture_id_fkey FOREIGN KEY (architecture_id) REFERENCES architecture(id);
+
+
+--
+-- Name: binary_acl_map_fingerprint_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY binary_acl_map
+    ADD CONSTRAINT binary_acl_map_fingerprint_id_fkey FOREIGN KEY (fingerprint_id) REFERENCES fingerprint(id);
+
+
+--
+-- Name: build_queue_files_build_queue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY build_queue_files
+    ADD CONSTRAINT build_queue_files_build_queue_id_fkey FOREIGN KEY (build_queue_id) REFERENCES build_queue(id) ON DELETE CASCADE;
+
+
+--
+-- Name: build_queue_policy_files_build_queue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY build_queue_policy_files
+    ADD CONSTRAINT build_queue_policy_files_build_queue_id_fkey FOREIGN KEY (build_queue_id) REFERENCES build_queue(id) ON DELETE CASCADE;
+
+
+--
+-- Name: build_queue_policy_files_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY build_queue_policy_files
+    ADD CONSTRAINT build_queue_policy_files_file_id_fkey FOREIGN KEY (file_id) REFERENCES changes_pending_files(id) ON DELETE CASCADE;
+
+
+--
+-- Name: changes_pending_binaries_architecture_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_architecture_id_fkey FOREIGN KEY (architecture_id) REFERENCES architecture(id);
+
+
+--
+-- Name: changes_pending_binaries_change_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_change_id_fkey FOREIGN KEY (change_id) REFERENCES changes(id);
+
+
+--
+-- Name: changes_pending_binaries_pending_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_pending_file_id_fkey FOREIGN KEY (pending_file_id) REFERENCES changes_pending_files(id);
+
+
+--
+-- Name: changes_pending_binaries_pending_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_pending_source_id_fkey FOREIGN KEY (pending_source_id) REFERENCES changes_pending_source(id);
+
+
+--
+-- Name: changes_pending_binaries_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_binaries
+    ADD CONSTRAINT changes_pending_binaries_source_id_fkey FOREIGN KEY (source_id) REFERENCES source(id);
+
+
+--
+-- Name: changes_pending_files_map_change_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_files_map
+    ADD CONSTRAINT changes_pending_files_map_change_id_fkey FOREIGN KEY (change_id) REFERENCES changes(id);
+
+
+--
+-- Name: changes_pending_files_map_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_files_map
+    ADD CONSTRAINT changes_pending_files_map_file_id_fkey FOREIGN KEY (file_id) REFERENCES changes_pending_files(id);
+
+
+--
+-- Name: changes_pending_source_change_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_source
+    ADD CONSTRAINT changes_pending_source_change_id_fkey FOREIGN KEY (change_id) REFERENCES changes(id);
+
+
+--
+-- Name: changes_pending_source_changedby_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_source
+    ADD CONSTRAINT changes_pending_source_changedby_id_fkey FOREIGN KEY (changedby_id) REFERENCES maintainer(id);
+
+
+--
+-- Name: changes_pending_source_files_pending_file_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_source_files
+    ADD CONSTRAINT changes_pending_source_files_pending_file_id_fkey FOREIGN KEY (pending_file_id) REFERENCES changes_pending_files(id);
+
+
+--
+-- Name: changes_pending_source_files_pending_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_source_files
+    ADD CONSTRAINT changes_pending_source_files_pending_source_id_fkey FOREIGN KEY (pending_source_id) REFERENCES changes_pending_source(id);
+
+
+--
+-- Name: changes_pending_source_maintainer_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_source
+    ADD CONSTRAINT changes_pending_source_maintainer_id_fkey FOREIGN KEY (maintainer_id) REFERENCES maintainer(id);
+
+
+--
+-- Name: changes_pending_source_sig_fpr_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pending_source
+    ADD CONSTRAINT changes_pending_source_sig_fpr_fkey FOREIGN KEY (sig_fpr) REFERENCES fingerprint(id);
+
+
+--
+-- Name: changes_pool_files_changeid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pool_files
+    ADD CONSTRAINT changes_pool_files_changeid_fkey FOREIGN KEY (changeid) REFERENCES changes(id) ON DELETE CASCADE;
+
+
+--
+-- Name: changes_pool_files_fileid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes_pool_files
+    ADD CONSTRAINT changes_pool_files_fileid_fkey FOREIGN KEY (fileid) REFERENCES files(id) ON DELETE RESTRICT;
+
+
+--
+-- Name: dsc_files_file; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY dsc_files
+    ADD CONSTRAINT dsc_files_file FOREIGN KEY (file) REFERENCES files(id) MATCH FULL;
+
+
+--
+-- Name: dsc_files_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY dsc_files
+    ADD CONSTRAINT dsc_files_source FOREIGN KEY (source) REFERENCES source(id) MATCH FULL;
+
+
+--
+-- Name: external_overrides_component_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY external_overrides
+    ADD CONSTRAINT external_overrides_component_fkey FOREIGN KEY (component) REFERENCES component(id);
+
+
+--
+-- Name: external_overrides_suite_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY external_overrides
+    ADD CONSTRAINT external_overrides_suite_fkey FOREIGN KEY (suite) REFERENCES suite(id);
+
+
+--
+-- Name: extra_src_references_bin_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY extra_src_references
+    ADD CONSTRAINT extra_src_references_bin_id_fkey FOREIGN KEY (bin_id) REFERENCES binaries(id) ON DELETE CASCADE;
+
+
+--
+-- Name: extra_src_references_src_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY extra_src_references
+    ADD CONSTRAINT extra_src_references_src_id_fkey FOREIGN KEY (src_id) REFERENCES source(id) ON DELETE RESTRICT;
+
+
+--
+-- Name: files_location; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY files
+    ADD CONSTRAINT files_location FOREIGN KEY (location) REFERENCES location(id) MATCH FULL;
+
+
+--
+-- Name: fingerprint_binary_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY fingerprint
+    ADD CONSTRAINT fingerprint_binary_acl_id_fkey FOREIGN KEY (binary_acl_id) REFERENCES binary_acl(id);
+
+
+--
+-- Name: fingerprint_source_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY fingerprint
+    ADD CONSTRAINT fingerprint_source_acl_id_fkey FOREIGN KEY (source_acl_id) REFERENCES source_acl(id);
+
+
+--
+-- Name: fingerprint_uid; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY fingerprint
+    ADD CONSTRAINT fingerprint_uid FOREIGN KEY (uid) REFERENCES uid(id) MATCH FULL;
+
+
+--
+-- Name: keyring_acl_map_architecture_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY keyring_acl_map
+    ADD CONSTRAINT keyring_acl_map_architecture_id_fkey FOREIGN KEY (architecture_id) REFERENCES architecture(id);
+
+
+--
+-- Name: keyring_acl_map_keyring_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY keyring_acl_map
+    ADD CONSTRAINT keyring_acl_map_keyring_id_fkey FOREIGN KEY (keyring_id) REFERENCES keyrings(id);
+
+
+--
+-- Name: keyrings_default_binary_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY keyrings
+    ADD CONSTRAINT keyrings_default_binary_acl_id_fkey FOREIGN KEY (default_binary_acl_id) REFERENCES binary_acl(id);
+
+
+--
+-- Name: keyrings_default_source_acl_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY keyrings
+    ADD CONSTRAINT keyrings_default_source_acl_id_fkey FOREIGN KEY (default_source_acl_id) REFERENCES source_acl(id);
+
+
+--
+-- Name: known_changes_approved_for_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes
+    ADD CONSTRAINT known_changes_approved_for_fkey FOREIGN KEY (in_queue) REFERENCES policy_queue(id) ON DELETE RESTRICT;
+
+
+--
+-- Name: known_changes_in_queue_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY changes
+    ADD CONSTRAINT known_changes_in_queue_fkey FOREIGN KEY (in_queue) REFERENCES policy_queue(id) ON DELETE RESTRICT;
+
+
+--
+-- Name: location_archive_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY location
+    ADD CONSTRAINT location_archive_fkey FOREIGN KEY (archive) REFERENCES archive(id);
+
+
+--
+-- Name: location_component_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY location
+    ADD CONSTRAINT location_component_fkey FOREIGN KEY (component) REFERENCES component(id);
+
+
+--
+-- Name: override_component; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY override
+    ADD CONSTRAINT override_component FOREIGN KEY (component) REFERENCES component(id) MATCH FULL;
+
+
+--
+-- Name: override_priority; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY override
+    ADD CONSTRAINT override_priority FOREIGN KEY (priority) REFERENCES priority(id) MATCH FULL;
+
+
+--
+-- Name: override_section; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY override
+    ADD CONSTRAINT override_section FOREIGN KEY (section) REFERENCES section(id) MATCH FULL;
+
+
+--
+-- Name: override_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY override
+    ADD CONSTRAINT override_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
+
+
+--
+-- Name: override_type; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY override
+    ADD CONSTRAINT override_type FOREIGN KEY (type) REFERENCES override_type(id) MATCH FULL;
+
+
+--
+-- Name: queue_files_fileid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY build_queue_files
+    ADD CONSTRAINT queue_files_fileid_fkey FOREIGN KEY (fileid) REFERENCES files(id) ON DELETE CASCADE;
+
+
+--
+-- Name: source_changedby; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY source
+    ADD CONSTRAINT source_changedby FOREIGN KEY (changedby) REFERENCES maintainer(id) MATCH FULL;
+
+
+--
+-- Name: source_file; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY source
+    ADD CONSTRAINT source_file FOREIGN KEY (file) REFERENCES files(id) MATCH FULL;
+
+
+--
+-- Name: source_maintainer; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY source
+    ADD CONSTRAINT source_maintainer FOREIGN KEY (maintainer) REFERENCES maintainer(id) MATCH FULL;
+
+
+--
+-- Name: source_metadata_key_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY source_metadata
+    ADD CONSTRAINT source_metadata_key_id_fkey FOREIGN KEY (key_id) REFERENCES metadata_keys(key_id);
+
+
+--
+-- Name: source_metadata_src_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY source_metadata
+    ADD CONSTRAINT source_metadata_src_id_fkey FOREIGN KEY (src_id) REFERENCES source(id) ON DELETE CASCADE;
+
+
+--
+-- Name: source_sig_fpr; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY source
+    ADD CONSTRAINT source_sig_fpr FOREIGN KEY (sig_fpr) REFERENCES fingerprint(id) MATCH FULL;
+
+
+--
+-- Name: src_associations_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY src_associations
+    ADD CONSTRAINT src_associations_source FOREIGN KEY (source) REFERENCES source(id) MATCH FULL;
+
+
+--
+-- Name: src_associations_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY src_associations
+    ADD CONSTRAINT src_associations_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
+
+
+--
+-- Name: src_contents_source_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY src_contents
+    ADD CONSTRAINT src_contents_source_id_fkey FOREIGN KEY (source_id) REFERENCES source(id) ON DELETE CASCADE;
+
+
+--
+-- Name: src_format_key; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite_src_formats
+    ADD CONSTRAINT src_format_key FOREIGN KEY (src_format) REFERENCES src_format(id);
+
+
+--
+-- Name: src_uploaders_maintainer; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY src_uploaders
+    ADD CONSTRAINT src_uploaders_maintainer FOREIGN KEY (maintainer) REFERENCES maintainer(id) ON DELETE CASCADE;
+
+
+--
+-- Name: src_uploaders_source; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY src_uploaders
+    ADD CONSTRAINT src_uploaders_source FOREIGN KEY (source) REFERENCES source(id) ON DELETE CASCADE;
+
+
+--
+-- Name: suite_architectures_architectur; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite_architectures
+    ADD CONSTRAINT suite_architectures_architectur FOREIGN KEY (architecture) REFERENCES architecture(id) MATCH FULL;
+
+
+--
+-- Name: suite_architectures_suite; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite_architectures
+    ADD CONSTRAINT suite_architectures_suite FOREIGN KEY (suite) REFERENCES suite(id) MATCH FULL;
+
+
+--
+-- Name: suite_build_queue_copy_build_queue_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite_build_queue_copy
+    ADD CONSTRAINT suite_build_queue_copy_build_queue_id_fkey FOREIGN KEY (build_queue_id) REFERENCES build_queue(id) ON DELETE RESTRICT;
+
+
+--
+-- Name: suite_key; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite_src_formats
+    ADD CONSTRAINT suite_key FOREIGN KEY (suite) REFERENCES suite(id);
+
+
+--
+-- Name: suite_policy_queue_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite
+    ADD CONSTRAINT suite_policy_queue_fkey FOREIGN KEY (policy_queue_id) REFERENCES policy_queue(id) ON DELETE RESTRICT;
+
+
+--
+-- Name: suite_queue_copy_suite_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY suite_build_queue_copy
+    ADD CONSTRAINT suite_queue_copy_suite_fkey FOREIGN KEY (suite) REFERENCES suite(id);
+
+
+--
+-- Name: upload_blocks_fingerprint_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY upload_blocks
+    ADD CONSTRAINT upload_blocks_fingerprint_id_fkey FOREIGN KEY (fingerprint_id) REFERENCES fingerprint(id);
+
+
+--
+-- Name: upload_blocks_uid_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY upload_blocks
+    ADD CONSTRAINT upload_blocks_uid_id_fkey FOREIGN KEY (uid_id) REFERENCES uid(id);
+
+
+--
+-- Name: version_check_reference_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY version_check
+    ADD CONSTRAINT version_check_reference_fkey FOREIGN KEY (reference) REFERENCES suite(id);
+
+
+--
+-- Name: version_check_suite_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dak
+--
+
+ALTER TABLE ONLY version_check
+    ADD CONSTRAINT version_check_suite_fkey FOREIGN KEY (suite) REFERENCES suite(id);
+
+
+--
+-- Name: audit; Type: ACL; Schema: -; Owner: dak
+--
+
+REVOKE ALL ON SCHEMA audit FROM PUBLIC;
+REVOKE ALL ON SCHEMA audit FROM dak;
+GRANT ALL ON SCHEMA audit TO dak;
+GRANT USAGE ON SCHEMA audit TO PUBLIC;
+GRANT USAGE ON SCHEMA audit TO ftpteam;
+GRANT USAGE ON SCHEMA audit TO ftpmaster;
+
+
+--
+-- Name: public; Type: ACL; Schema: -; Owner: postgres
+--
+
+REVOKE ALL ON SCHEMA public FROM PUBLIC;
+REVOKE ALL ON SCHEMA public FROM postgres;
+GRANT ALL ON SCHEMA public TO postgres;
+GRANT ALL ON SCHEMA public TO PUBLIC;
+
+
+SET search_path = audit, pg_catalog;
+
+--
+-- Name: package_changes; Type: ACL; Schema: audit; Owner: dak
+--
+
+REVOKE ALL ON TABLE package_changes FROM PUBLIC;
+REVOKE ALL ON TABLE package_changes FROM dak;
+GRANT ALL ON TABLE package_changes TO dak;
+GRANT SELECT ON TABLE package_changes TO PUBLIC;
+
+
+SET search_path = public, pg_catalog;
+
+--
+-- Name: bin_associations_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE bin_associations_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE bin_associations_id_seq FROM dak;
+GRANT ALL ON SEQUENCE bin_associations_id_seq TO dak;
+GRANT SELECT ON SEQUENCE bin_associations_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE bin_associations_id_seq TO ftpmaster;
+
+
+--
+-- Name: bin_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE bin_associations FROM PUBLIC;
+REVOKE ALL ON TABLE bin_associations FROM dak;
+GRANT ALL ON TABLE bin_associations TO dak;
+GRANT SELECT ON TABLE bin_associations TO PUBLIC;
+GRANT ALL ON TABLE bin_associations TO ftpmaster;
+GRANT DELETE ON TABLE bin_associations TO ftpteam;
+
+
+--
+-- Name: binaries_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE binaries_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE binaries_id_seq FROM dak;
+GRANT ALL ON SEQUENCE binaries_id_seq TO dak;
+GRANT SELECT ON SEQUENCE binaries_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE binaries_id_seq TO ftpmaster;
+
+
+--
+-- Name: binaries; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE binaries FROM PUBLIC;
+REVOKE ALL ON TABLE binaries FROM dak;
+GRANT ALL ON TABLE binaries TO dak;
+GRANT SELECT ON TABLE binaries TO PUBLIC;
+GRANT ALL ON TABLE binaries TO ftpmaster;
+
+
+--
+-- Name: bin_associations_binaries; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE bin_associations_binaries FROM PUBLIC;
+REVOKE ALL ON TABLE bin_associations_binaries FROM dak;
+GRANT ALL ON TABLE bin_associations_binaries TO dak;
+GRANT SELECT ON TABLE bin_associations_binaries TO ftpmaster;
+GRANT SELECT ON TABLE bin_associations_binaries TO PUBLIC;
+
+
+--
+-- Name: source_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE source_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE source_id_seq FROM dak;
+GRANT ALL ON SEQUENCE source_id_seq TO dak;
+GRANT SELECT ON SEQUENCE source_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE source_id_seq TO ftpmaster;
+
+
+--
+-- Name: source; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE source FROM PUBLIC;
+REVOKE ALL ON TABLE source FROM dak;
+GRANT ALL ON TABLE source TO dak;
+GRANT SELECT ON TABLE source TO PUBLIC;
+GRANT ALL ON TABLE source TO ftpmaster;
+
+
+--
+-- Name: src_associations_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE src_associations_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE src_associations_id_seq FROM dak;
+GRANT ALL ON SEQUENCE src_associations_id_seq TO dak;
+GRANT SELECT ON SEQUENCE src_associations_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE src_associations_id_seq TO ftpmaster;
+
+
+--
+-- Name: src_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE src_associations FROM PUBLIC;
+REVOKE ALL ON TABLE src_associations FROM dak;
+GRANT ALL ON TABLE src_associations TO dak;
+GRANT SELECT ON TABLE src_associations TO PUBLIC;
+GRANT ALL ON TABLE src_associations TO ftpmaster;
+GRANT DELETE ON TABLE src_associations TO ftpteam;
+
+
+--
+-- Name: src_associations_bin; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE src_associations_bin FROM PUBLIC;
+REVOKE ALL ON TABLE src_associations_bin FROM dak;
+GRANT ALL ON TABLE src_associations_bin TO dak;
+GRANT SELECT ON TABLE src_associations_bin TO ftpmaster;
+GRANT SELECT ON TABLE src_associations_bin TO PUBLIC;
+
+
+--
+-- Name: almost_obsolete_all_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE almost_obsolete_all_associations FROM PUBLIC;
+REVOKE ALL ON TABLE almost_obsolete_all_associations FROM dak;
+GRANT ALL ON TABLE almost_obsolete_all_associations TO dak;
+GRANT SELECT ON TABLE almost_obsolete_all_associations TO ftpmaster;
+GRANT SELECT ON TABLE almost_obsolete_all_associations TO PUBLIC;
+
+
+--
+-- Name: any_associations_source; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE any_associations_source FROM PUBLIC;
+REVOKE ALL ON TABLE any_associations_source FROM dak;
+GRANT ALL ON TABLE any_associations_source TO dak;
+GRANT SELECT ON TABLE any_associations_source TO ftpmaster;
+GRANT SELECT ON TABLE any_associations_source TO PUBLIC;
+
+
+--
+-- Name: src_associations_src; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE src_associations_src FROM PUBLIC;
+REVOKE ALL ON TABLE src_associations_src FROM dak;
+GRANT ALL ON TABLE src_associations_src TO dak;
+GRANT SELECT ON TABLE src_associations_src TO ftpmaster;
+GRANT SELECT ON TABLE src_associations_src TO PUBLIC;
+
+
+--
+-- Name: almost_obsolete_src_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE almost_obsolete_src_associations FROM PUBLIC;
+REVOKE ALL ON TABLE almost_obsolete_src_associations FROM dak;
+GRANT ALL ON TABLE almost_obsolete_src_associations TO dak;
+GRANT SELECT ON TABLE almost_obsolete_src_associations TO ftpmaster;
+GRANT SELECT ON TABLE almost_obsolete_src_associations TO PUBLIC;
+
+
+--
+-- Name: architecture_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE architecture_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE architecture_id_seq FROM dak;
+GRANT ALL ON SEQUENCE architecture_id_seq TO dak;
+GRANT SELECT ON SEQUENCE architecture_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE architecture_id_seq TO ftpmaster;
+
+
+--
+-- Name: architecture; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE architecture FROM PUBLIC;
+REVOKE ALL ON TABLE architecture FROM dak;
+GRANT ALL ON TABLE architecture TO dak;
+GRANT SELECT ON TABLE architecture TO PUBLIC;
+GRANT ALL ON TABLE architecture TO ftpmaster;
+
+
+--
+-- Name: archive_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE archive_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE archive_id_seq FROM dak;
+GRANT ALL ON SEQUENCE archive_id_seq TO dak;
+GRANT SELECT ON SEQUENCE archive_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE archive_id_seq TO ftpmaster;
+
+
+--
+-- Name: archive; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE archive FROM PUBLIC;
+REVOKE ALL ON TABLE archive FROM dak;
+GRANT ALL ON TABLE archive TO dak;
+GRANT SELECT ON TABLE archive TO PUBLIC;
+GRANT ALL ON TABLE archive TO ftpmaster;
+
+
+--
+-- Name: bin_contents; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE bin_contents FROM PUBLIC;
+REVOKE ALL ON TABLE bin_contents FROM dak;
+GRANT ALL ON TABLE bin_contents TO dak;
+GRANT SELECT ON TABLE bin_contents TO PUBLIC;
+GRANT ALL ON TABLE bin_contents TO ftpmaster;
+
+
+--
+-- Name: binaries_metadata; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE binaries_metadata FROM PUBLIC;
+REVOKE ALL ON TABLE binaries_metadata FROM dak;
+GRANT ALL ON TABLE binaries_metadata TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE binaries_metadata TO ftpmaster;
+GRANT SELECT ON TABLE binaries_metadata TO PUBLIC;
+
+
+--
+-- Name: suite_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE suite_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE suite_id_seq FROM dak;
+GRANT ALL ON SEQUENCE suite_id_seq TO dak;
+GRANT SELECT ON SEQUENCE suite_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE suite_id_seq TO ftpmaster;
+
+
+--
+-- Name: suite; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE suite FROM PUBLIC;
+REVOKE ALL ON TABLE suite FROM dak;
+GRANT ALL ON TABLE suite TO dak;
+GRANT SELECT ON TABLE suite TO PUBLIC;
+GRANT ALL ON TABLE suite TO ftpmaster;
+
+
+--
+-- Name: binaries_suite_arch; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE binaries_suite_arch FROM PUBLIC;
+REVOKE ALL ON TABLE binaries_suite_arch FROM dak;
+GRANT ALL ON TABLE binaries_suite_arch TO dak;
+GRANT SELECT ON TABLE binaries_suite_arch TO ftpmaster;
+GRANT SELECT ON TABLE binaries_suite_arch TO PUBLIC;
+
+
+--
+-- Name: binary_acl; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE binary_acl FROM PUBLIC;
+REVOKE ALL ON TABLE binary_acl FROM dak;
+GRANT ALL ON TABLE binary_acl TO dak;
+GRANT SELECT ON TABLE binary_acl TO PUBLIC;
+GRANT ALL ON TABLE binary_acl TO ftpmaster;
+
+
+--
+-- Name: binary_acl_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE binary_acl_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE binary_acl_id_seq FROM dak;
+GRANT ALL ON SEQUENCE binary_acl_id_seq TO dak;
+GRANT ALL ON SEQUENCE binary_acl_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE binary_acl_id_seq TO PUBLIC;
+
+
+--
+-- Name: binary_acl_map; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE binary_acl_map FROM PUBLIC;
+REVOKE ALL ON TABLE binary_acl_map FROM dak;
+GRANT ALL ON TABLE binary_acl_map TO dak;
+GRANT SELECT ON TABLE binary_acl_map TO PUBLIC;
+GRANT ALL ON TABLE binary_acl_map TO ftpmaster;
+
+
+--
+-- Name: binary_acl_map_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE binary_acl_map_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE binary_acl_map_id_seq FROM dak;
+GRANT ALL ON SEQUENCE binary_acl_map_id_seq TO dak;
+GRANT ALL ON SEQUENCE binary_acl_map_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE binary_acl_map_id_seq TO PUBLIC;
+
+
+--
+-- Name: files_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE files_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE files_id_seq FROM dak;
+GRANT ALL ON SEQUENCE files_id_seq TO dak;
+GRANT SELECT ON SEQUENCE files_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE files_id_seq TO ftpmaster;
+
+
+--
+-- Name: files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE files FROM PUBLIC;
+REVOKE ALL ON TABLE files FROM dak;
+GRANT ALL ON TABLE files TO dak;
+GRANT SELECT ON TABLE files TO PUBLIC;
+GRANT ALL ON TABLE files TO ftpmaster;
+
+
+--
+-- Name: location_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE location_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE location_id_seq FROM dak;
+GRANT ALL ON SEQUENCE location_id_seq TO dak;
+GRANT SELECT ON SEQUENCE location_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE location_id_seq TO ftpmaster;
+
+
+--
+-- Name: location; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE location FROM PUBLIC;
+REVOKE ALL ON TABLE location FROM dak;
+GRANT ALL ON TABLE location TO dak;
+GRANT SELECT ON TABLE location TO PUBLIC;
+GRANT ALL ON TABLE location TO ftpmaster;
+
+
+--
+-- Name: binfiles_suite_component_arch; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE binfiles_suite_component_arch FROM PUBLIC;
+REVOKE ALL ON TABLE binfiles_suite_component_arch FROM dak;
+GRANT ALL ON TABLE binfiles_suite_component_arch TO dak;
+GRANT SELECT ON TABLE binfiles_suite_component_arch TO ftpmaster;
+GRANT SELECT ON TABLE binfiles_suite_component_arch TO PUBLIC;
+
+
+--
+-- Name: build_queue; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE build_queue FROM PUBLIC;
+REVOKE ALL ON TABLE build_queue FROM dak;
+GRANT ALL ON TABLE build_queue TO dak;
+GRANT SELECT ON TABLE build_queue TO PUBLIC;
+GRANT ALL ON TABLE build_queue TO ftpmaster;
+
+
+--
+-- Name: build_queue_files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE build_queue_files FROM PUBLIC;
+REVOKE ALL ON TABLE build_queue_files FROM dak;
+GRANT ALL ON TABLE build_queue_files TO dak;
+GRANT SELECT ON TABLE build_queue_files TO PUBLIC;
+GRANT ALL ON TABLE build_queue_files TO ftpmaster;
+
+
+--
+-- Name: build_queue_files_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE build_queue_files_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE build_queue_files_id_seq FROM dak;
+GRANT ALL ON SEQUENCE build_queue_files_id_seq TO dak;
+GRANT ALL ON SEQUENCE build_queue_files_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE build_queue_files_id_seq TO PUBLIC;
+
+
+--
+-- Name: build_queue_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE build_queue_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE build_queue_id_seq FROM dak;
+GRANT ALL ON SEQUENCE build_queue_id_seq TO dak;
+GRANT ALL ON SEQUENCE build_queue_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE build_queue_id_seq TO PUBLIC;
+
+
+--
+-- Name: build_queue_policy_files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE build_queue_policy_files FROM PUBLIC;
+REVOKE ALL ON TABLE build_queue_policy_files FROM dak;
+GRANT ALL ON TABLE build_queue_policy_files TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE build_queue_policy_files TO ftpmaster;
+GRANT SELECT ON TABLE build_queue_policy_files TO PUBLIC;
+
+
+--
+-- Name: changelogs_text; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changelogs_text FROM PUBLIC;
+REVOKE ALL ON TABLE changelogs_text FROM dak;
+GRANT ALL ON TABLE changelogs_text TO dak;
+GRANT SELECT ON TABLE changelogs_text TO PUBLIC;
+GRANT ALL ON TABLE changelogs_text TO ftpmaster;
+
+
+--
+-- Name: changes; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes FROM PUBLIC;
+REVOKE ALL ON TABLE changes FROM dak;
+GRANT ALL ON TABLE changes TO dak;
+GRANT ALL ON TABLE changes TO ftpmaster;
+GRANT SELECT ON TABLE changes TO PUBLIC;
+GRANT DELETE,UPDATE ON TABLE changes TO ftpteam;
+
+
+--
+-- Name: changelogs; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changelogs FROM PUBLIC;
+REVOKE ALL ON TABLE changelogs FROM dak;
+GRANT ALL ON TABLE changelogs TO dak;
+GRANT SELECT ON TABLE changelogs TO PUBLIC;
+GRANT ALL ON TABLE changelogs TO ftpmaster;
+
+
+--
+-- Name: changelogs_text_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE changelogs_text_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE changelogs_text_id_seq FROM dak;
+GRANT ALL ON SEQUENCE changelogs_text_id_seq TO dak;
+GRANT ALL ON SEQUENCE changelogs_text_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE changelogs_text_id_seq TO PUBLIC;
+
+
+--
+-- Name: changes_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE changes_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE changes_id_seq FROM dak;
+GRANT ALL ON SEQUENCE changes_id_seq TO dak;
+GRANT ALL ON SEQUENCE changes_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE changes_id_seq TO PUBLIC;
+
+
+--
+-- Name: changes_pending_binaries; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes_pending_binaries FROM PUBLIC;
+REVOKE ALL ON TABLE changes_pending_binaries FROM dak;
+GRANT ALL ON TABLE changes_pending_binaries TO dak;
+GRANT SELECT ON TABLE changes_pending_binaries TO PUBLIC;
+GRANT ALL ON TABLE changes_pending_binaries TO ftpmaster;
+
+
+--
+-- Name: changes_pending_binaries_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE changes_pending_binaries_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE changes_pending_binaries_id_seq FROM dak;
+GRANT ALL ON SEQUENCE changes_pending_binaries_id_seq TO dak;
+GRANT ALL ON SEQUENCE changes_pending_binaries_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE changes_pending_binaries_id_seq TO PUBLIC;
+
+
+--
+-- Name: changes_pending_files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes_pending_files FROM PUBLIC;
+REVOKE ALL ON TABLE changes_pending_files FROM dak;
+GRANT ALL ON TABLE changes_pending_files TO dak;
+GRANT SELECT ON TABLE changes_pending_files TO PUBLIC;
+GRANT ALL ON TABLE changes_pending_files TO ftpmaster;
+GRANT DELETE ON TABLE changes_pending_files TO ftpteam;
+
+
+--
+-- Name: changes_pending_files_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE changes_pending_files_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE changes_pending_files_id_seq FROM dak;
+GRANT ALL ON SEQUENCE changes_pending_files_id_seq TO dak;
+GRANT ALL ON SEQUENCE changes_pending_files_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE changes_pending_files_id_seq TO PUBLIC;
+GRANT USAGE ON SEQUENCE changes_pending_files_id_seq TO ftpteam;
+
+
+--
+-- Name: changes_pending_files_map; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes_pending_files_map FROM PUBLIC;
+REVOKE ALL ON TABLE changes_pending_files_map FROM dak;
+GRANT ALL ON TABLE changes_pending_files_map TO dak;
+GRANT SELECT,INSERT,DELETE ON TABLE changes_pending_files_map TO ftpteam;
+GRANT SELECT ON TABLE changes_pending_files_map TO PUBLIC;
+
+
+--
+-- Name: changes_pending_source; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes_pending_source FROM PUBLIC;
+REVOKE ALL ON TABLE changes_pending_source FROM dak;
+GRANT ALL ON TABLE changes_pending_source TO dak;
+GRANT SELECT ON TABLE changes_pending_source TO PUBLIC;
+GRANT ALL ON TABLE changes_pending_source TO ftpmaster;
+
+
+--
+-- Name: changes_pending_source_files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes_pending_source_files FROM PUBLIC;
+REVOKE ALL ON TABLE changes_pending_source_files FROM dak;
+GRANT ALL ON TABLE changes_pending_source_files TO dak;
+GRANT SELECT ON TABLE changes_pending_source_files TO PUBLIC;
+GRANT ALL ON TABLE changes_pending_source_files TO ftpmaster;
+
+
+--
+-- Name: changes_pending_source_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE changes_pending_source_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE changes_pending_source_id_seq FROM dak;
+GRANT ALL ON SEQUENCE changes_pending_source_id_seq TO dak;
+GRANT ALL ON SEQUENCE changes_pending_source_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE changes_pending_source_id_seq TO PUBLIC;
+
+
+--
+-- Name: changes_pool_files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE changes_pool_files FROM PUBLIC;
+REVOKE ALL ON TABLE changes_pool_files FROM dak;
+GRANT ALL ON TABLE changes_pool_files TO dak;
+GRANT SELECT ON TABLE changes_pool_files TO PUBLIC;
+GRANT ALL ON TABLE changes_pool_files TO ftpmaster;
+GRANT DELETE ON TABLE changes_pool_files TO ftpteam;
+
+
+--
+-- Name: component_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE component_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE component_id_seq FROM dak;
+GRANT ALL ON SEQUENCE component_id_seq TO dak;
+GRANT SELECT ON SEQUENCE component_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE component_id_seq TO ftpmaster;
+
+
+--
+-- Name: component; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE component FROM PUBLIC;
+REVOKE ALL ON TABLE component FROM dak;
+GRANT ALL ON TABLE component TO dak;
+GRANT SELECT ON TABLE component TO PUBLIC;
+GRANT ALL ON TABLE component TO ftpmaster;
+
+
+--
+-- Name: config; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE config FROM PUBLIC;
+REVOKE ALL ON TABLE config FROM dak;
+GRANT ALL ON TABLE config TO dak;
+GRANT ALL ON TABLE config TO ftpmaster;
+GRANT SELECT ON TABLE config TO ftpteam;
+GRANT SELECT ON TABLE config TO PUBLIC;
+
+
+--
+-- Name: config_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE config_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE config_id_seq FROM dak;
+GRANT ALL ON SEQUENCE config_id_seq TO dak;
+GRANT ALL ON SEQUENCE config_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE config_id_seq TO PUBLIC;
+
+
+--
+-- Name: dsc_files_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE dsc_files_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE dsc_files_id_seq FROM dak;
+GRANT ALL ON SEQUENCE dsc_files_id_seq TO dak;
+GRANT SELECT ON SEQUENCE dsc_files_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE dsc_files_id_seq TO ftpmaster;
+
+
+--
+-- Name: dsc_files; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE dsc_files FROM PUBLIC;
+REVOKE ALL ON TABLE dsc_files FROM dak;
+GRANT ALL ON TABLE dsc_files TO dak;
+GRANT SELECT ON TABLE dsc_files TO PUBLIC;
+GRANT ALL ON TABLE dsc_files TO ftpmaster;
+
+
+--
+-- Name: external_overrides; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE external_overrides FROM PUBLIC;
+REVOKE ALL ON TABLE external_overrides FROM dak;
+GRANT ALL ON TABLE external_overrides TO dak;
+GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE external_overrides TO ftpmaster;
+GRANT SELECT ON TABLE external_overrides TO PUBLIC;
+
+
+--
+-- Name: extra_src_references; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE extra_src_references FROM PUBLIC;
+REVOKE ALL ON TABLE extra_src_references FROM dak;
+GRANT ALL ON TABLE extra_src_references TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE extra_src_references TO ftpmaster;
+GRANT SELECT ON TABLE extra_src_references TO PUBLIC;
+
+
+--
+-- Name: file_arch_suite; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE file_arch_suite FROM PUBLIC;
+REVOKE ALL ON TABLE file_arch_suite FROM dak;
+GRANT ALL ON TABLE file_arch_suite TO dak;
+GRANT ALL ON TABLE file_arch_suite TO ftpmaster;
+GRANT SELECT ON TABLE file_arch_suite TO PUBLIC;
+
+
+--
+-- Name: fingerprint_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE fingerprint_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE fingerprint_id_seq FROM dak;
+GRANT ALL ON SEQUENCE fingerprint_id_seq TO dak;
+GRANT SELECT ON SEQUENCE fingerprint_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE fingerprint_id_seq TO ftpmaster;
+
+
+--
+-- Name: fingerprint; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE fingerprint FROM PUBLIC;
+REVOKE ALL ON TABLE fingerprint FROM dak;
+GRANT ALL ON TABLE fingerprint TO dak;
+GRANT SELECT ON TABLE fingerprint TO PUBLIC;
+GRANT ALL ON TABLE fingerprint TO ftpmaster;
+
+
+--
+-- Name: keyring_acl_map; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE keyring_acl_map FROM PUBLIC;
+REVOKE ALL ON TABLE keyring_acl_map FROM dak;
+GRANT ALL ON TABLE keyring_acl_map TO dak;
+GRANT SELECT ON TABLE keyring_acl_map TO PUBLIC;
+GRANT ALL ON TABLE keyring_acl_map TO ftpmaster;
+
+
+--
+-- Name: keyring_acl_map_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE keyring_acl_map_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE keyring_acl_map_id_seq FROM dak;
+GRANT ALL ON SEQUENCE keyring_acl_map_id_seq TO dak;
+GRANT ALL ON SEQUENCE keyring_acl_map_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE keyring_acl_map_id_seq TO PUBLIC;
+
+
+--
+-- Name: keyrings; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE keyrings FROM PUBLIC;
+REVOKE ALL ON TABLE keyrings FROM dak;
+GRANT ALL ON TABLE keyrings TO dak;
+GRANT SELECT ON TABLE keyrings TO PUBLIC;
+GRANT ALL ON TABLE keyrings TO ftpmaster;
+
+
+--
+-- Name: keyrings_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE keyrings_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE keyrings_id_seq FROM dak;
+GRANT ALL ON SEQUENCE keyrings_id_seq TO dak;
+GRANT SELECT ON SEQUENCE keyrings_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE keyrings_id_seq TO ftpmaster;
+
+
+--
+-- Name: maintainer_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE maintainer_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE maintainer_id_seq FROM dak;
+GRANT ALL ON SEQUENCE maintainer_id_seq TO dak;
+GRANT SELECT ON SEQUENCE maintainer_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE maintainer_id_seq TO ftpmaster;
+
+
+--
+-- Name: maintainer; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE maintainer FROM PUBLIC;
+REVOKE ALL ON TABLE maintainer FROM dak;
+GRANT ALL ON TABLE maintainer TO dak;
+GRANT SELECT ON TABLE maintainer TO PUBLIC;
+GRANT ALL ON TABLE maintainer TO ftpmaster;
+
+
+--
+-- Name: metadata_keys; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE metadata_keys FROM PUBLIC;
+REVOKE ALL ON TABLE metadata_keys FROM dak;
+GRANT ALL ON TABLE metadata_keys TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE metadata_keys TO ftpmaster;
+GRANT SELECT ON TABLE metadata_keys TO PUBLIC;
+
+
+--
+-- Name: metadata_keys_key_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE metadata_keys_key_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE metadata_keys_key_id_seq FROM dak;
+GRANT ALL ON SEQUENCE metadata_keys_key_id_seq TO dak;
+GRANT ALL ON SEQUENCE metadata_keys_key_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE metadata_keys_key_id_seq TO PUBLIC;
+
+
+--
+-- Name: new_comments; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE new_comments FROM PUBLIC;
+REVOKE ALL ON TABLE new_comments FROM dak;
+GRANT ALL ON TABLE new_comments TO dak;
+GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE new_comments TO ftptrainee;
+GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE new_comments TO ftpteam;
+GRANT ALL ON TABLE new_comments TO ftpmaster;
+
+
+--
+-- Name: new_comments_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE new_comments_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE new_comments_id_seq FROM dak;
+GRANT ALL ON SEQUENCE new_comments_id_seq TO dak;
+GRANT SELECT,UPDATE ON SEQUENCE new_comments_id_seq TO ftptrainee;
+GRANT SELECT,UPDATE ON SEQUENCE new_comments_id_seq TO ftpteam;
+GRANT ALL ON SEQUENCE new_comments_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE new_comments_id_seq TO PUBLIC;
+
+
+--
+-- Name: newest_all_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE newest_all_associations FROM PUBLIC;
+REVOKE ALL ON TABLE newest_all_associations FROM dak;
+GRANT ALL ON TABLE newest_all_associations TO dak;
+GRANT SELECT ON TABLE newest_all_associations TO ftpmaster;
+GRANT SELECT ON TABLE newest_all_associations TO PUBLIC;
+
+
+--
+-- Name: newest_any_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE newest_any_associations FROM PUBLIC;
+REVOKE ALL ON TABLE newest_any_associations FROM dak;
+GRANT ALL ON TABLE newest_any_associations TO dak;
+GRANT SELECT ON TABLE newest_any_associations TO ftpmaster;
+GRANT SELECT ON TABLE newest_any_associations TO PUBLIC;
+
+
+--
+-- Name: source_suite; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE source_suite FROM PUBLIC;
+REVOKE ALL ON TABLE source_suite FROM dak;
+GRANT ALL ON TABLE source_suite TO dak;
+GRANT SELECT ON TABLE source_suite TO ftpmaster;
+GRANT SELECT ON TABLE source_suite TO PUBLIC;
+
+
+--
+-- Name: newest_source; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE newest_source FROM PUBLIC;
+REVOKE ALL ON TABLE newest_source FROM dak;
+GRANT ALL ON TABLE newest_source TO dak;
+GRANT SELECT ON TABLE newest_source TO ftpmaster;
+GRANT SELECT ON TABLE newest_source TO PUBLIC;
+
+
+--
+-- Name: newest_src_association; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE newest_src_association FROM PUBLIC;
+REVOKE ALL ON TABLE newest_src_association FROM dak;
+GRANT ALL ON TABLE newest_src_association TO dak;
+GRANT SELECT ON TABLE newest_src_association TO ftpmaster;
+GRANT SELECT ON TABLE newest_src_association TO PUBLIC;
+
+
+--
+-- Name: obsolete_all_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE obsolete_all_associations FROM PUBLIC;
+REVOKE ALL ON TABLE obsolete_all_associations FROM dak;
+GRANT ALL ON TABLE obsolete_all_associations TO dak;
+GRANT SELECT ON TABLE obsolete_all_associations TO ftpmaster;
+GRANT SELECT ON TABLE obsolete_all_associations TO PUBLIC;
+
+
+--
+-- Name: obsolete_any_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE obsolete_any_associations FROM PUBLIC;
+REVOKE ALL ON TABLE obsolete_any_associations FROM dak;
+GRANT ALL ON TABLE obsolete_any_associations TO dak;
+GRANT SELECT ON TABLE obsolete_any_associations TO ftpmaster;
+GRANT SELECT ON TABLE obsolete_any_associations TO PUBLIC;
+
+
+--
+-- Name: obsolete_any_by_all_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE obsolete_any_by_all_associations FROM PUBLIC;
+REVOKE ALL ON TABLE obsolete_any_by_all_associations FROM dak;
+GRANT ALL ON TABLE obsolete_any_by_all_associations TO dak;
+GRANT SELECT ON TABLE obsolete_any_by_all_associations TO ftpmaster;
+GRANT SELECT ON TABLE obsolete_any_by_all_associations TO PUBLIC;
+
+
+--
+-- Name: obsolete_src_associations; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE obsolete_src_associations FROM PUBLIC;
+REVOKE ALL ON TABLE obsolete_src_associations FROM dak;
+GRANT ALL ON TABLE obsolete_src_associations TO dak;
+GRANT SELECT ON TABLE obsolete_src_associations TO ftpmaster;
+GRANT SELECT ON TABLE obsolete_src_associations TO PUBLIC;
+
+
+--
+-- Name: override; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE override FROM PUBLIC;
+REVOKE ALL ON TABLE override FROM dak;
+GRANT ALL ON TABLE override TO dak;
+GRANT SELECT ON TABLE override TO PUBLIC;
+GRANT ALL ON TABLE override TO ftpmaster;
+GRANT INSERT,DELETE,UPDATE ON TABLE override TO ftpteam;
+
+
+--
+-- Name: override_type_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE override_type_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE override_type_id_seq FROM dak;
+GRANT ALL ON SEQUENCE override_type_id_seq TO dak;
+GRANT SELECT ON SEQUENCE override_type_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE override_type_id_seq TO ftpmaster;
+
+
+--
+-- Name: override_type; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE override_type FROM PUBLIC;
+REVOKE ALL ON TABLE override_type FROM dak;
+GRANT ALL ON TABLE override_type TO dak;
+GRANT SELECT ON TABLE override_type TO PUBLIC;
+GRANT ALL ON TABLE override_type TO ftpmaster;
+
+
+--
+-- Name: policy_queue; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE policy_queue FROM PUBLIC;
+REVOKE ALL ON TABLE policy_queue FROM dak;
+GRANT ALL ON TABLE policy_queue TO dak;
+GRANT SELECT ON TABLE policy_queue TO PUBLIC;
+GRANT ALL ON TABLE policy_queue TO ftpmaster;
+
+
+--
+-- Name: policy_queue_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE policy_queue_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE policy_queue_id_seq FROM dak;
+GRANT ALL ON SEQUENCE policy_queue_id_seq TO dak;
+GRANT ALL ON SEQUENCE policy_queue_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE policy_queue_id_seq TO PUBLIC;
+
+
+--
+-- Name: priority_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE priority_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE priority_id_seq FROM dak;
+GRANT ALL ON SEQUENCE priority_id_seq TO dak;
+GRANT SELECT ON SEQUENCE priority_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE priority_id_seq TO ftpmaster;
+
+
+--
+-- Name: priority; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE priority FROM PUBLIC;
+REVOKE ALL ON TABLE priority FROM dak;
+GRANT ALL ON TABLE priority TO dak;
+GRANT SELECT ON TABLE priority TO PUBLIC;
+GRANT ALL ON TABLE priority TO ftpmaster;
+
+
+--
+-- Name: section_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE section_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE section_id_seq FROM dak;
+GRANT ALL ON SEQUENCE section_id_seq TO dak;
+GRANT SELECT ON SEQUENCE section_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE section_id_seq TO ftpmaster;
+
+
+--
+-- Name: section; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE section FROM PUBLIC;
+REVOKE ALL ON TABLE section FROM dak;
+GRANT ALL ON TABLE section TO dak;
+GRANT SELECT ON TABLE section TO PUBLIC;
+GRANT ALL ON TABLE section TO ftpmaster;
+
+
+--
+-- Name: source_acl; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE source_acl FROM PUBLIC;
+REVOKE ALL ON TABLE source_acl FROM dak;
+GRANT ALL ON TABLE source_acl TO dak;
+GRANT SELECT ON TABLE source_acl TO PUBLIC;
+GRANT ALL ON TABLE source_acl TO ftpmaster;
+
+
+--
+-- Name: source_acl_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE source_acl_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE source_acl_id_seq FROM dak;
+GRANT ALL ON SEQUENCE source_acl_id_seq TO dak;
+GRANT ALL ON SEQUENCE source_acl_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE source_acl_id_seq TO PUBLIC;
+
+
+--
+-- Name: source_metadata; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE source_metadata FROM PUBLIC;
+REVOKE ALL ON TABLE source_metadata FROM dak;
+GRANT ALL ON TABLE source_metadata TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE source_metadata TO ftpmaster;
+GRANT SELECT ON TABLE source_metadata TO PUBLIC;
+
+
+--
+-- Name: src_contents; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE src_contents FROM PUBLIC;
+REVOKE ALL ON TABLE src_contents FROM dak;
+GRANT ALL ON TABLE src_contents TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE src_contents TO ftpmaster;
+GRANT SELECT ON TABLE src_contents TO PUBLIC;
+
+
+--
+-- Name: src_format; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE src_format FROM PUBLIC;
+REVOKE ALL ON TABLE src_format FROM dak;
+GRANT ALL ON TABLE src_format TO dak;
+GRANT SELECT ON TABLE src_format TO PUBLIC;
+GRANT ALL ON TABLE src_format TO ftpmaster;
+
+
+--
+-- Name: src_format_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE src_format_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE src_format_id_seq FROM dak;
+GRANT ALL ON SEQUENCE src_format_id_seq TO dak;
+GRANT ALL ON SEQUENCE src_format_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE src_format_id_seq TO PUBLIC;
+
+
+--
+-- Name: src_uploaders; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE src_uploaders FROM PUBLIC;
+REVOKE ALL ON TABLE src_uploaders FROM dak;
+GRANT ALL ON TABLE src_uploaders TO dak;
+GRANT SELECT ON TABLE src_uploaders TO PUBLIC;
+GRANT ALL ON TABLE src_uploaders TO ftpmaster;
+
+
+--
+-- Name: src_uploaders_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE src_uploaders_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE src_uploaders_id_seq FROM dak;
+GRANT ALL ON SEQUENCE src_uploaders_id_seq TO dak;
+GRANT SELECT ON SEQUENCE src_uploaders_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE src_uploaders_id_seq TO ftpmaster;
+
+
+--
+-- Name: suite_architectures; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE suite_architectures FROM PUBLIC;
+REVOKE ALL ON TABLE suite_architectures FROM dak;
+GRANT ALL ON TABLE suite_architectures TO dak;
+GRANT SELECT ON TABLE suite_architectures TO PUBLIC;
+GRANT ALL ON TABLE suite_architectures TO ftpmaster;
+
+
+--
+-- Name: suite_arch_by_name; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE suite_arch_by_name FROM PUBLIC;
+REVOKE ALL ON TABLE suite_arch_by_name FROM dak;
+GRANT ALL ON TABLE suite_arch_by_name TO dak;
+GRANT SELECT ON TABLE suite_arch_by_name TO PUBLIC;
+GRANT SELECT ON TABLE suite_arch_by_name TO ftpmaster;
+
+
+--
+-- Name: suite_build_queue_copy; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE suite_build_queue_copy FROM PUBLIC;
+REVOKE ALL ON TABLE suite_build_queue_copy FROM dak;
+GRANT ALL ON TABLE suite_build_queue_copy TO dak;
+GRANT SELECT ON TABLE suite_build_queue_copy TO PUBLIC;
+GRANT ALL ON TABLE suite_build_queue_copy TO ftpmaster;
+
+
+--
+-- Name: suite_src_formats; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE suite_src_formats FROM PUBLIC;
+REVOKE ALL ON TABLE suite_src_formats FROM dak;
+GRANT ALL ON TABLE suite_src_formats TO dak;
+GRANT SELECT ON TABLE suite_src_formats TO PUBLIC;
+GRANT ALL ON TABLE suite_src_formats TO ftpmaster;
+
+
+--
+-- Name: uid_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE uid_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE uid_id_seq FROM dak;
+GRANT ALL ON SEQUENCE uid_id_seq TO dak;
+GRANT SELECT ON SEQUENCE uid_id_seq TO PUBLIC;
+GRANT ALL ON SEQUENCE uid_id_seq TO ftpmaster;
+
+
+--
+-- Name: uid; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE uid FROM PUBLIC;
+REVOKE ALL ON TABLE uid FROM dak;
+GRANT ALL ON TABLE uid TO dak;
+GRANT SELECT ON TABLE uid TO PUBLIC;
+GRANT ALL ON TABLE uid TO ftpmaster;
+
+
+--
+-- Name: upload_blocks; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE upload_blocks FROM PUBLIC;
+REVOKE ALL ON TABLE upload_blocks FROM dak;
+GRANT ALL ON TABLE upload_blocks TO dak;
+GRANT SELECT ON TABLE upload_blocks TO PUBLIC;
+GRANT ALL ON TABLE upload_blocks TO ftpmaster;
+
+
+--
+-- Name: upload_blocks_id_seq; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON SEQUENCE upload_blocks_id_seq FROM PUBLIC;
+REVOKE ALL ON SEQUENCE upload_blocks_id_seq FROM dak;
+GRANT ALL ON SEQUENCE upload_blocks_id_seq TO dak;
+GRANT ALL ON SEQUENCE upload_blocks_id_seq TO ftpmaster;
+GRANT SELECT ON SEQUENCE upload_blocks_id_seq TO PUBLIC;
+
+
+--
+-- Name: version_check; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE version_check FROM PUBLIC;
+REVOKE ALL ON TABLE version_check FROM dak;
+GRANT ALL ON TABLE version_check TO dak;
+GRANT SELECT,INSERT,UPDATE ON TABLE version_check TO ftpmaster;
+GRANT SELECT ON TABLE version_check TO PUBLIC;
+
+
+--
+-- Name: version_checks; Type: ACL; Schema: public; Owner: dak
+--
+
+REVOKE ALL ON TABLE version_checks FROM PUBLIC;
+REVOKE ALL ON TABLE version_checks FROM dak;
+GRANT ALL ON TABLE version_checks TO dak;
+GRANT SELECT ON TABLE version_checks TO PUBLIC;
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+-- Set schema version
+INSERT INTO config (name, value) VALUES ('db_revision', 68);
+
index 85a76948d193c5f4a8f4615eb71aa1fdc011236f..20dab4b9e51dfd0d30656a95ea7355941e205002 100755 (executable)
@@ -20,7 +20,7 @@ class ParseChangesTestCase(DakTestCase):
             pass
         except GpgException:
             pass
-        except InvalidDscError, actual_line:
+        except InvalidDscError as actual_line:
             if line is not None:
                 assertEqual(actual_line, line)
 
index 4e8c7ca25e8282497c0dc6eb99e8f6864cd006ab..fc1ad3deb0f1c57d7bc02d4db6b6b375f474a807 100755 (executable)
@@ -103,7 +103,7 @@ def parse_leave_reason(fname):
 
     try:
         f = open(fname)
-    except IOError, e:
+    except IOError as e:
         sys.stderr.write("Can't open %s: %s\n" % (fname, e))
         return {}
 
@@ -210,7 +210,7 @@ if __name__ == "__main__":
     try:
         status.feed_in.write_xml(file(feed_in_file, "w+"), "utf-8")
         status.feed_out.write_xml(file(feed_out_file, "w+"), "utf-8")
-    except IOError, why:
+    except IOError as why:
         sys.stderr.write("Unable to write feeds: %s\n", why)
         sys.exit(1)
 
@@ -218,7 +218,7 @@ if __name__ == "__main__":
 
     try:
         cPickle.dump(status, open(status_db, "w+"))
-    except IOError, why:
+    except IOError as why:
         sys.stderr.write("Unable to save status: %s\n", why)
         sys.exit(1)