← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~cjwatson/launchpad/remove-launchpad-html into lp:launchpad

 

Colin Watson has proposed merging lp:~cjwatson/launchpad/remove-launchpad-html into lp:launchpad.

Commit message:
Remove hopelessly outdated database/schema/launchpad.html.

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~cjwatson/launchpad/remove-launchpad-html/+merge/143795

== Summary ==

database/schema/launchpad.html was last updated in July 2009.  Documentation that outdated is worse than no documentation, and should be removed.  Furthermore, it's easy to generate an up-to-date copy locally using 'make -C database/schema doc', so there's really no need to have these >30000 LoC in the tree.
-- 
The attached diff has been truncated due to its size.
https://code.launchpad.net/~cjwatson/launchpad/remove-launchpad-html/+merge/143795
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~cjwatson/launchpad/remove-launchpad-html into lp:launchpad.
=== removed file 'database/schema/launchpad.html'
--- database/schema/launchpad.html	2010-02-22 13:08:23 +0000
+++ database/schema/launchpad.html	1970-01-01 00:00:00 +0000
@@ -1,30685 +0,0 @@
-<!-- $Header: /cvsroot/autodoc/autodoc/html.tmpl,v 1.4 2006/05/16 19:01:27 rbt Exp $ -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
-<html xmlns="http://www.w3.org/1999/xhtml";>
-<head>
-<meta name="generator" content=
-"HTML Tidy for Linux (vers 7 December 2008), see www.w3.org" />
-<title>Index for launchpad_dev</title>
-<meta http-equiv="Content-Type" content=
-"text/html; charset=us-ascii" />
-<style type="text/css">
-/*<![CDATA[*/
-        BODY {
-                color:  #000000;
-                background-color: #FFFFFF;
-                font-family: Helvetica, sans-serif;
-        }
-
-        P {
-                margin-top: 5px;
-                margin-bottom: 5px;
-        }
-
-        P.w3ref {
-                font-size: 8pt;
-                font-style: italic;
-                text-align: right;
-        }
-
-        P.detail {
-                font-size: 10pt;
-        }
-
-        .error {
-                color: #FFFFFF;
-                background-color: #FF0000;
-        }
-
-        H1, H2, H3, H4, H5, H6 {
-        }
-
-        OL {
-                list-style-type: upper-alpha;
-        }
-
-        UL.topic {
-                list-style-type: upper-alpha;
-        }
-
-        LI.topic {
-                font-weight : bold;
-        }
-
-        HR {
-                color: #00FF00;
-                background-color: #808080;
-        }
-
-        TABLE {
-                border-width: medium;
-                padding: 3px;
-                background-color: #000000;
-                width: 90%;
-        }
-
-        CAPTION {
-                text-transform: capitalize;
-                font-weight : bold;
-                font-size: 14pt;
-        }
-
-        TH {
-                color: #FFFFFF;
-                background-color: #000000;
-                text-align: left;
-        }
-
-        TR {
-                color: #000000;
-                background-color: #000000;
-                vertical-align: top;
-        }
-
-        TR.tr0 {
-                background-color: #F0F0F0;
-        }
-
-        TR.tr1 {
-                background-color: #D8D8D8;
-        }
-
-        TD {
-                font-size: 12pt;
-        }
-
-        TD.col0 {
-                font-weight : bold;
-                width: 20%;
-        }
-
-        TD.col1 {
-                font-style: italic;
-                width: 15%;
-        }
-
-        TD.col2 {
-                font-size: 12px;
-        }
-/*]]>*/
-</style>
-<link rel="stylesheet" type="text/css" media="all" href=
-"all.css" />
-<link rel="stylesheet" type="text/css" media="screen" href=
-"screen.css" />
-<link rel="stylesheet" type="text/css" media="print" href=
-"print.css" />
-<meta http-equiv="Content-Type" content=
-"text/html; charset=us-ascii" />
-</head>
-<body>
-<!-- Primary Index -->
-<p><br />
-<br />
-Dumped on 2009-07-29</p>
-<h1><a name="index" id="index">Index of database -
-launchpad_dev</a></h1>
-<ul>
-<li><a name="public.schema" id="public.schema">public</a></li>
-<li style="list-style: none; display: inline">
-<ul>
-<li><a href="#public.table.account">account</a></li>
-<li><a href=
-"#public.table.accountpassword">accountpassword</a></li>
-<li><a href="#public.view.alllocks">alllocks</a></li>
-<li><a href="#public.table.announcement">announcement</a></li>
-<li><a href="#public.table.answercontact">answercontact</a></li>
-<li><a href="#public.table.archive">archive</a></li>
-<li><a href="#public.table.archivearch">archivearch</a></li>
-<li><a href=
-"#public.table.archiveauthtoken">archiveauthtoken</a></li>
-<li><a href=
-"#public.table.archivedependency">archivedependency</a></li>
-<li><a href=
-"#public.table.archivepermission">archivepermission</a></li>
-<li><a href=
-"#public.table.archivesubscriber">archivesubscriber</a></li>
-<li><a href="#public.table.authtoken">authtoken</a></li>
-<li><a href=
-"#public.view.binaryandsourcepackagenameview">binaryandsourcepackagenameview</a></li>
-<li><a href=
-"#public.table.binarypackagefile">binarypackagefile</a></li>
-<li><a href=
-"#public.view.binarypackagefilepublishing">binarypackagefilepublishing</a></li>
-<li><a href=
-"#public.table.binarypackagename">binarypackagename</a></li>
-<li><a href=
-"#public.view.binarypackagepublishinghistory">binarypackagepublishinghistory</a></li>
-<li><a href=
-"#public.table.binarypackagerelease">binarypackagerelease</a></li>
-<li><a href="#public.table.bounty">bounty</a></li>
-<li><a href="#public.table.bountymessage">bountymessage</a></li>
-<li><a href=
-"#public.table.bountysubscription">bountysubscription</a></li>
-<li><a href="#public.table.branch">branch</a></li>
-<li><a href="#public.table.branchjob">branchjob</a></li>
-<li><a href=
-"#public.table.branchmergeproposal">branchmergeproposal</a></li>
-<li><a href=
-"#public.table.branchmergeproposaljob">branchmergeproposaljob</a></li>
-<li><a href=
-"#public.table.branchmergerobot">branchmergerobot</a></li>
-<li><a href="#public.table.branchrevision">branchrevision</a></li>
-<li><a href=
-"#public.table.branchsubscription">branchsubscription</a></li>
-<li><a href=
-"#public.table.branchvisibilitypolicy">branchvisibilitypolicy</a></li>
-<li><a href=
-"#public.view.branchwithsortkeys">branchwithsortkeys</a></li>
-<li><a href="#public.table.bug">bug</a></li>
-<li><a href="#public.table.bugactivity">bugactivity</a></li>
-<li><a href=
-"#public.table.bugaffectsperson">bugaffectsperson</a></li>
-<li><a href="#public.table.bugattachment">bugattachment</a></li>
-<li><a href="#public.table.bugbranch">bugbranch</a></li>
-<li><a href="#public.table.bugcve">bugcve</a></li>
-<li><a href="#public.table.bugmessage">bugmessage</a></li>
-<li><a href="#public.table.bugnomination">bugnomination</a></li>
-<li><a href=
-"#public.table.bugnotification">bugnotification</a></li>
-<li><a href=
-"#public.table.bugnotificationattachment">bugnotificationattachment</a></li>
-<li><a href=
-"#public.table.bugnotificationrecipient">bugnotificationrecipient</a></li>
-<li><a href=
-"#public.table.bugpackageinfestation">bugpackageinfestation</a></li>
-<li><a href=
-"#public.table.bugproductinfestation">bugproductinfestation</a></li>
-<li><a href=
-"#public.table.bugsubscription">bugsubscription</a></li>
-<li><a href="#public.table.bugtag">bugtag</a></li>
-<li><a href="#public.table.bugtask">bugtask</a></li>
-<li><a href="#public.table.bugtracker">bugtracker</a></li>
-<li><a href=
-"#public.table.bugtrackeralias">bugtrackeralias</a></li>
-<li><a href=
-"#public.table.bugtrackerperson">bugtrackerperson</a></li>
-<li><a href="#public.table.bugwatch">bugwatch</a></li>
-<li><a href="#public.table.build">build</a></li>
-<li><a href="#public.table.builder">builder</a></li>
-<li><a href="#public.table.buildqueue">buildqueue</a></li>
-<li><a href="#public.table.codeimport">codeimport</a></li>
-<li><a href=
-"#public.table.codeimportevent">codeimportevent</a></li>
-<li><a href=
-"#public.table.codeimporteventdata">codeimporteventdata</a></li>
-<li><a href="#public.table.codeimportjob">codeimportjob</a></li>
-<li><a href=
-"#public.table.codeimportmachine">codeimportmachine</a></li>
-<li><a href=
-"#public.table.codeimportresult">codeimportresult</a></li>
-<li><a href=
-"#public.table.codereviewmessage">codereviewmessage</a></li>
-<li><a href="#public.table.codereviewvote">codereviewvote</a></li>
-<li><a href=
-"#public.table.commercialsubscription">commercialsubscription</a></li>
-<li><a href="#public.table.component">component</a></li>
-<li><a href=
-"#public.table.componentselection">componentselection</a></li>
-<li><a href="#public.table.continent">continent</a></li>
-<li><a href="#public.table.country">country</a></li>
-<li><a href=
-"#public.table.customlanguagecode">customlanguagecode</a></li>
-<li><a href="#public.table.cve">cve</a></li>
-<li><a href="#public.table.cvereference">cvereference</a></li>
-<li><a href="#public.table.diff">diff</a></li>
-<li><a href="#public.table.distribution">distribution</a></li>
-<li><a href=
-"#public.table.distributionbounty">distributionbounty</a></li>
-<li><a href=
-"#public.table.distributionmirror">distributionmirror</a></li>
-<li><a href=
-"#public.table.distributionsourcepackage">distributionsourcepackage</a></li>
-<li><a href=
-"#public.table.distributionsourcepackagecache">distributionsourcepackagecache</a></li>
-<li><a href=
-"#public.table.distroarchseries">distroarchseries</a></li>
-<li><a href=
-"#public.table.distrocomponentuploader">distrocomponentuploader</a></li>
-<li><a href="#public.table.distroseries">distroseries</a></li>
-<li><a href=
-"#public.table.distroserieslanguage">distroserieslanguage</a></li>
-<li><a href=
-"#public.table.distroseriespackagecache">distroseriespackagecache</a></li>
-<li><a href="#public.table.emailaddress">emailaddress</a></li>
-<li><a href="#public.table.entitlement">entitlement</a></li>
-<li><a href="#public.view.exclusivelocks">exclusivelocks</a></li>
-<li><a href="#public.table.faq">faq</a></li>
-<li><a href=
-"#public.table.featuredproject">featuredproject</a></li>
-<li><a href=
-"#public.table.flatpackagesetinclusion">flatpackagesetinclusion</a></li>
-<li><a href="#public.table.fticache">fticache</a></li>
-<li><a href="#public.table.gpgkey">gpgkey</a></li>
-<li><a href="#public.table.hwdevice">hwdevice</a></li>
-<li><a href="#public.table.hwdeviceclass">hwdeviceclass</a></li>
-<li><a href=
-"#public.table.hwdevicedriverlink">hwdevicedriverlink</a></li>
-<li><a href=
-"#public.table.hwdevicenamevariant">hwdevicenamevariant</a></li>
-<li><a href="#public.table.hwdmihandle">hwdmihandle</a></li>
-<li><a href="#public.table.hwdmivalue">hwdmivalue</a></li>
-<li><a href="#public.table.hwdriver">hwdriver</a></li>
-<li><a href="#public.view.hwdrivernames">hwdrivernames</a></li>
-<li><a href=
-"#public.view.hwdriverpackagenames">hwdriverpackagenames</a></li>
-<li><a href="#public.table.hwsubmission">hwsubmission</a></li>
-<li><a href=
-"#public.table.hwsubmissionbug">hwsubmissionbug</a></li>
-<li><a href=
-"#public.table.hwsubmissiondevice">hwsubmissiondevice</a></li>
-<li><a href=
-"#public.table.hwsystemfingerprint">hwsystemfingerprint</a></li>
-<li><a href="#public.table.hwtest">hwtest</a></li>
-<li><a href="#public.table.hwtestanswer">hwtestanswer</a></li>
-<li><a href=
-"#public.table.hwtestanswerchoice">hwtestanswerchoice</a></li>
-<li><a href=
-"#public.table.hwtestanswercount">hwtestanswercount</a></li>
-<li><a href=
-"#public.table.hwtestanswercountdevice">hwtestanswercountdevice</a></li>
-<li><a href=
-"#public.table.hwtestanswerdevice">hwtestanswerdevice</a></li>
-<li><a href="#public.table.hwvendorid">hwvendorid</a></li>
-<li><a href="#public.table.hwvendorname">hwvendorname</a></li>
-<li><a href="#public.table.ircid">ircid</a></li>
-<li><a href="#public.table.jabberid">jabberid</a></li>
-<li><a href="#public.table.job">job</a></li>
-<li><a href="#public.table.karma">karma</a></li>
-<li><a href="#public.table.karmaaction">karmaaction</a></li>
-<li><a href="#public.table.karmacache">karmacache</a></li>
-<li><a href="#public.table.karmacategory">karmacategory</a></li>
-<li><a href=
-"#public.table.karmatotalcache">karmatotalcache</a></li>
-<li><a href="#public.table.language">language</a></li>
-<li><a href="#public.table.languagepack">languagepack</a></li>
-<li><a href=
-"#public.table.launchpaddatabaserevision">launchpaddatabaserevision</a></li>
-<li><a href=
-"#public.table.launchpadstatistic">launchpadstatistic</a></li>
-<li><a href=
-"#public.table.libraryfilealias">libraryfilealias</a></li>
-<li><a href=
-"#public.table.libraryfilecontent">libraryfilecontent</a></li>
-<li><a href=
-"#public.table.libraryfiledownloadcount">libraryfiledownloadcount</a></li>
-<li><a href="#public.table.logintoken">logintoken</a></li>
-<li><a href="#public.table.mailinglist">mailinglist</a></li>
-<li><a href="#public.table.mailinglistban">mailinglistban</a></li>
-<li><a href=
-"#public.table.mailinglistsubscription">mailinglistsubscription</a></li>
-<li><a href="#public.table.mentoringoffer">mentoringoffer</a></li>
-<li><a href=
-"#public.table.mergedirectivejob">mergedirectivejob</a></li>
-<li><a href="#public.table.message">message</a></li>
-<li><a href=
-"#public.table.messageapproval">messageapproval</a></li>
-<li><a href="#public.table.messagechunk">messagechunk</a></li>
-<li><a href="#public.table.milestone">milestone</a></li>
-<li><a href="#public.table.mirror">mirror</a></li>
-<li><a href=
-"#public.table.mirrorcdimagedistroseries">mirrorcdimagedistroseries</a></li>
-<li><a href="#public.table.mirrorcontent">mirrorcontent</a></li>
-<li><a href=
-"#public.table.mirrordistroarchseries">mirrordistroarchseries</a></li>
-<li><a href=
-"#public.table.mirrordistroseriessource">mirrordistroseriessource</a></li>
-<li><a href=
-"#public.table.mirrorproberecord">mirrorproberecord</a></li>
-<li><a href=
-"#public.table.mirrorsourcecontent">mirrorsourcecontent</a></li>
-<li><a href="#public.table.nameblacklist">nameblacklist</a></li>
-<li><a href=
-"#public.table.oauthaccesstoken">oauthaccesstoken</a></li>
-<li><a href="#public.table.oauthconsumer">oauthconsumer</a></li>
-<li><a href="#public.table.oauthnonce">oauthnonce</a></li>
-<li><a href=
-"#public.table.oauthrequesttoken">oauthrequesttoken</a></li>
-<li><a href="#public.table.officialbugtag">officialbugtag</a></li>
-<li><a href=
-"#public.table.openidassociation">openidassociation</a></li>
-<li><a href=
-"#public.table.openidauthorization">openidauthorization</a></li>
-<li><a href=
-"#public.table.openidconsumerassociation">openidconsumerassociation</a></li>
-<li><a href=
-"#public.table.openidconsumernonce">openidconsumernonce</a></li>
-<li><a href="#public.table.openidnonce">openidnonce</a></li>
-<li><a href="#public.table.openidrpconfig">openidrpconfig</a></li>
-<li><a href=
-"#public.table.openidrpsummary">openidrpsummary</a></li>
-<li><a href=
-"#public.table.packagebugsupervisor">packagebugsupervisor</a></li>
-<li><a href=
-"#public.table.packagecopyrequest">packagecopyrequest</a></li>
-<li><a href="#public.table.packagediff">packagediff</a></li>
-<li><a href=
-"#public.table.packageselection">packageselection</a></li>
-<li><a href="#public.table.packageset">packageset</a></li>
-<li><a href=
-"#public.table.packagesetinclusion">packagesetinclusion</a></li>
-<li><a href=
-"#public.table.packagesetsources">packagesetsources</a></li>
-<li><a href="#public.table.packageupload">packageupload</a></li>
-<li><a href=
-"#public.table.packageuploadbuild">packageuploadbuild</a></li>
-<li><a href=
-"#public.table.packageuploadcustom">packageuploadcustom</a></li>
-<li><a href=
-"#public.table.packageuploadsource">packageuploadsource</a></li>
-<li><a href="#public.table.packaging">packaging</a></li>
-<li><a href=
-"#public.table.parsedapachelog">parsedapachelog</a></li>
-<li><a href="#public.table.person">person</a></li>
-<li><a href="#public.table.personlanguage">personlanguage</a></li>
-<li><a href="#public.table.personlocation">personlocation</a></li>
-<li><a href=
-"#public.table.personnotification">personnotification</a></li>
-<li><a href="#public.table.pillarname">pillarname</a></li>
-<li><a href="#public.table.pocketchroot">pocketchroot</a></li>
-<li><a href="#public.table.pocomment">pocomment</a></li>
-<li><a href=
-"#public.table.poexportrequest">poexportrequest</a></li>
-<li><a href="#public.table.pofile">pofile</a></li>
-<li><a href=
-"#public.table.pofiletranslator">pofiletranslator</a></li>
-<li><a href="#public.table.poll">poll</a></li>
-<li><a href="#public.table.polloption">polloption</a></li>
-<li><a href="#public.table.pomsgid">pomsgid</a></li>
-<li><a href="#public.table.posubscription">posubscription</a></li>
-<li><a href="#public.table.potemplate">potemplate</a></li>
-<li><a href="#public.view.potexport">potexport</a></li>
-<li><a href="#public.table.potmsgset">potmsgset</a></li>
-<li><a href="#public.table.potranslation">potranslation</a></li>
-<li><a href="#public.table.previewdiff">previewdiff</a></li>
-<li><a href="#public.table.processor">processor</a></li>
-<li><a href=
-"#public.table.processorfamily">processorfamily</a></li>
-<li><a href="#public.table.product">product</a></li>
-<li><a href="#public.table.productbounty">productbounty</a></li>
-<li><a href=
-"#public.table.productcvsmodule">productcvsmodule</a></li>
-<li><a href="#public.table.productlicense">productlicense</a></li>
-<li><a href="#public.table.productrelease">productrelease</a></li>
-<li><a href=
-"#public.table.productreleasefile">productreleasefile</a></li>
-<li><a href="#public.table.productseries">productseries</a></li>
-<li><a href=
-"#public.table.productseriescodeimport">productseriescodeimport</a></li>
-<li><a href=
-"#public.table.productsvnmodule">productsvnmodule</a></li>
-<li><a href="#public.table.project">project</a></li>
-<li><a href="#public.table.projectbounty">projectbounty</a></li>
-<li><a href=
-"#public.table.projectrelationship">projectrelationship</a></li>
-<li><a href=
-"#public.view.publishedpackage">publishedpackage</a></li>
-<li><a href=
-"#public.table.pushmirroraccess">pushmirroraccess</a></li>
-<li><a href="#public.table.question">question</a></li>
-<li><a href="#public.table.questionbug">questionbug</a></li>
-<li><a href=
-"#public.table.questionmessage">questionmessage</a></li>
-<li><a href=
-"#public.table.questionreopening">questionreopening</a></li>
-<li><a href=
-"#public.table.questionsubscription">questionsubscription</a></li>
-<li><a href="#public.table.requestedcds">requestedcds</a></li>
-<li><a href="#public.table.revision">revision</a></li>
-<li><a href="#public.table.revisionauthor">revisionauthor</a></li>
-<li><a href="#public.table.revisioncache">revisioncache</a></li>
-<li><a href="#public.view.revisionnumber">revisionnumber</a></li>
-<li><a href="#public.table.revisionparent">revisionparent</a></li>
-<li><a href=
-"#public.table.revisionproperty">revisionproperty</a></li>
-<li><a href="#public.table.scriptactivity">scriptactivity</a></li>
-<li><a href="#public.table.section">section</a></li>
-<li><a href=
-"#public.table.sectionselection">sectionselection</a></li>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">securebinarypackagepublishinghistory</a></li>
-<li><a href=
-"#public.table.securesourcepackagepublishinghistory">securesourcepackagepublishinghistory</a></li>
-<li><a href=
-"#public.table.seriessourcepackagebranch">seriessourcepackagebranch</a></li>
-<li><a href="#public.table.shipitreport">shipitreport</a></li>
-<li><a href="#public.table.shipitsurvey">shipitsurvey</a></li>
-<li><a href=
-"#public.table.shipitsurveyanswer">shipitsurveyanswer</a></li>
-<li><a href=
-"#public.table.shipitsurveyquestion">shipitsurveyquestion</a></li>
-<li><a href=
-"#public.table.shipitsurveyresult">shipitsurveyresult</a></li>
-<li><a href="#public.table.shipment">shipment</a></li>
-<li><a href=
-"#public.table.shippingrequest">shippingrequest</a></li>
-<li><a href="#public.table.shippingrun">shippingrun</a></li>
-<li><a href=
-"#public.table.signedcodeofconduct">signedcodeofconduct</a></li>
-<li><a href=
-"#public.view.sourcepackagefilepublishing">sourcepackagefilepublishing</a></li>
-<li><a href=
-"#public.table.sourcepackagename">sourcepackagename</a></li>
-<li><a href=
-"#public.view.sourcepackagepublishinghistory">sourcepackagepublishinghistory</a></li>
-<li><a href=
-"#public.table.sourcepackagerelease">sourcepackagerelease</a></li>
-<li><a href=
-"#public.table.sourcepackagereleasefile">sourcepackagereleasefile</a></li>
-<li><a href="#public.table.specification">specification</a></li>
-<li><a href=
-"#public.table.specificationbranch">specificationbranch</a></li>
-<li><a href=
-"#public.table.specificationbug">specificationbug</a></li>
-<li><a href=
-"#public.table.specificationdependency">specificationdependency</a></li>
-<li><a href=
-"#public.table.specificationfeedback">specificationfeedback</a></li>
-<li><a href=
-"#public.table.specificationmessage">specificationmessage</a></li>
-<li><a href=
-"#public.table.specificationsubscription">specificationsubscription</a></li>
-<li><a href="#public.table.spokenin">spokenin</a></li>
-<li><a href="#public.table.sprint">sprint</a></li>
-<li><a href=
-"#public.table.sprintattendance">sprintattendance</a></li>
-<li><a href=
-"#public.table.sprintspecification">sprintspecification</a></li>
-<li><a href="#public.table.sshkey">sshkey</a></li>
-<li><a href=
-"#public.table.standardshipitrequest">standardshipitrequest</a></li>
-<li><a href="#public.table.staticdiff">staticdiff</a></li>
-<li><a href=
-"#public.table.structuralsubscription">structuralsubscription</a></li>
-<li><a href="#public.table.teammembership">teammembership</a></li>
-<li><a href=
-"#public.table.teamparticipation">teamparticipation</a></li>
-<li><a href=
-"#public.table.temporaryblobstorage">temporaryblobstorage</a></li>
-<li><a href=
-"#public.table.translationgroup">translationgroup</a></li>
-<li><a href=
-"#public.table.translationimportqueueentry">translationimportqueueentry</a></li>
-<li><a href=
-"#public.table.translationmessage">translationmessage</a></li>
-<li><a href=
-"#public.table.translationrelicensingagreement">translationrelicensingagreement</a></li>
-<li><a href=
-"#public.table.translationtemplateitem">translationtemplateitem</a></li>
-<li><a href="#public.table.translator">translator</a></li>
-<li><a href=
-"#public.table.usertouseremail">usertouseremail</a></li>
-<li><a href=
-"#public.view.validpersoncache">validpersoncache</a></li>
-<li><a href=
-"#public.view.validpersonorteamcache">validpersonorteamcache</a></li>
-<li><a href="#public.table.vote">vote</a></li>
-<li><a href="#public.table.votecast">votecast</a></li>
-<li><a href="#public.table.webserviceban">webserviceban</a></li>
-<li><a href="#public.table.wikiname">wikiname</a></li>
-<li><a href=
-"#public.function.-killall-backends-text">_killall_backends( text
-)</a></li>
-<li><a href="#public.function.activity">activity( )</a></li>
-<li><a href=
-"#public.function.assert-patch-applied-ARRAY-0x1a83200-integer-integer-integer">
-assert_patch_applied( ARRAY(0x1a83200) integer, integer, integer
-)</a></li>
-<li><a href=
-"#public.function.debversion-sort-key-ARRAY-0x1a83968-text">debversion_sort_key(
-ARRAY(0x1a83968) text )</a></li>
-<li><a href=
-"#public.function.generate-openid-identifier">generate_openid_identifier(
-)</a></li>
-<li><a href=
-"#public.function.is-blacklisted-name-text">is_blacklisted_name(
-text )</a></li>
-<li><a href="#public.function.is-person-text">is_person( text
-)</a></li>
-<li><a href=
-"#public.function.is-printable-ascii-text">is_printable_ascii( text
-)</a></li>
-<li><a href="#public.function.is-team-integer">is_team( integer
-)</a></li>
-<li><a href="#public.function.is-team-text">is_team( text
-)</a></li>
-<li><a href=
-"#public.function.mv-branch-distribution-update">mv_branch_distribution_update(
-)</a></li>
-<li><a href=
-"#public.function.mv-branch-distroseries-update">mv_branch_distroseries_update(
-)</a></li>
-<li><a href=
-"#public.function.mv-branch-person-update">mv_branch_person_update(
-)</a></li>
-<li><a href=
-"#public.function.mv-branch-product-update">mv_branch_product_update(
-)</a></li>
-<li><a href=
-"#public.function.mv-pillarname-distribution">mv_pillarname_distribution(
-)</a></li>
-<li><a href=
-"#public.function.mv-pillarname-product">mv_pillarname_product(
-)</a></li>
-<li><a href=
-"#public.function.mv-pillarname-project">mv_pillarname_project(
-)</a></li>
-<li><a href=
-"#public.function.mv-pofiletranslator-translationmessage">mv_pofiletranslator_translationmessage(
-)</a></li>
-<li><a href=
-"#public.function.name-blacklist-match-text">name_blacklist_match(
-text )</a></li>
-<li><a href=
-"#public.function.null-count-ARRAY-0x1a80cc8-anyarray">null_count(
-ARRAY(0x1a80cc8) anyarray )</a></li>
-<li><a href=
-"#public.function.packageset-deleted-trig">packageset_deleted_trig(
-)</a></li>
-<li><a href=
-"#public.function.packageset-inserted-trig">packageset_inserted_trig(
-)</a></li>
-<li><a href=
-"#public.function.packagesetinclusion-deleted-trig">packagesetinclusion_deleted_trig(
-)</a></li>
-<li><a href=
-"#public.function.packagesetinclusion-inserted-trig">packagesetinclusion_inserted_trig(
-)</a></li>
-<li><a href=
-"#public.function.person-sort-key-ARRAY-0x1a83500-text-text">person_sort_key(
-ARRAY(0x1a83500) text, text )</a></li>
-<li><a href="#public.function.pgstattuple-oid">pgstattuple( oid
-)</a></li>
-<li><a href="#public.function.pgstattuple-text">pgstattuple( text
-)</a></li>
-<li><a href=
-"#public.function.plpython-call-handler">plpython_call_handler(
-)</a></li>
-<li><a href="#public.function.replication-lag">replication_lag(
-)</a></li>
-<li><a href="#public.function.sane-version-text">sane_version( text
-)</a></li>
-<li><a href=
-"#public.function.set-bug-date-last-message">set_bug_date_last_message(
-)</a></li>
-<li><a href=
-"#public.function.set-bug-message-count">set_bug_message_count(
-)</a></li>
-<li><a href=
-"#public.function.set-bug-number-of-duplicates">set_bug_number_of_duplicates(
-)</a></li>
-<li><a href=
-"#public.function.set-bug-users-affected-count">set_bug_users_affected_count(
-)</a></li>
-<li><a href=
-"#public.function.set-bugtask-date-milestone-set">set_bugtask_date_milestone_set(
-)</a></li>
-<li><a href=
-"#public.function.set-date-status-set">set_date_status_set(
-)</a></li>
-<li><a href=
-"#public.function.set-openid-identifier">set_openid_identifier(
-)</a></li>
-<li><a href=
-"#public.function.set-shipit-normalized-address">set_shipit_normalized_address(
-)</a></li>
-<li><a href="#public.function.sha1-text">sha1( text )</a></li>
-<li><a href="#public.function.ulower-text">ulower( text )</a></li>
-<li><a href=
-"#public.function.update-branch-name-cache">update_branch_name_cache(
-)</a></li>
-<li><a href=
-"#public.function.valid-absolute-url-text">valid_absolute_url( text
-)</a></li>
-<li><a href=
-"#public.function.valid-branch-name-text">valid_branch_name( text
-)</a></li>
-<li><a href="#public.function.valid-bug-name-text">valid_bug_name(
-text )</a></li>
-<li><a href="#public.function.valid-cve-text">valid_cve( text
-)</a></li>
-<li><a href=
-"#public.function.valid-debian-version-text">valid_debian_version(
-text )</a></li>
-<li><a href=
-"#public.function.valid-fingerprint-text">valid_fingerprint( text
-)</a></li>
-<li><a href="#public.function.valid-keyid-text">valid_keyid( text
-)</a></li>
-<li><a href="#public.function.valid-name-text">valid_name( text
-)</a></li>
-<li><a href="#public.function.valid-regexp-text">valid_regexp( text
-)</a></li>
-<li><a href=
-"#public.function.you-are-your-own-member">you_are_your_own_member(
-)</a></li>
-</ul>
-</li>
-<li><a name="ts2.schema" id="ts2.schema">ts2</a></li>
-<li style="list-style: none; display: inline">
-<ul>
-<li><a href="#ts2.function.-ftq-text">_ftq( text )</a></li>
-<li><a href=
-"#ts2.function.-get-parser-from-curcfg">_get_parser_from_curcfg(
-)</a></li>
-<li><a href="#ts2.function.concat-tsvector-tsvector">concat(
-tsvector, tsvector )</a></li>
-<li><a href="#ts2.function.dex-init-internal">dex_init( internal
-)</a></li>
-<li><a href=
-"#ts2.function.dex-lexize-internal-internal-integer">dex_lexize(
-internal, internal, integer )</a></li>
-<li><a href="#ts2.function.ftiupdate">ftiupdate( )</a></li>
-<li><a href="#ts2.function.ftq-text">ftq( text )</a></li>
-<li><a href="#ts2.function.get-covers-tsvector-tsquery">get_covers(
-tsvector, tsquery )</a></li>
-<li><a href="#ts2.function.headline-oid-text-tsquery">headline(
-oid, text, tsquery )</a></li>
-<li><a href=
-"#ts2.function.headline-oid-text-tsquery-text">headline( oid, text,
-tsquery, text )</a></li>
-<li><a href="#ts2.function.headline-text-text-tsquery">headline(
-text, text, tsquery )</a></li>
-<li><a href=
-"#ts2.function.headline-text-text-tsquery-text">headline( text,
-text, tsquery, text )</a></li>
-<li><a href="#ts2.function.headline-text-tsquery">headline( text,
-tsquery )</a></li>
-<li><a href="#ts2.function.headline-text-tsquery-text">headline(
-text, tsquery, text )</a></li>
-<li><a href="#ts2.function.length-tsvector">length( tsvector
-)</a></li>
-<li><a href="#ts2.function.lexize-oid-text">lexize( oid, text
-)</a></li>
-<li><a href="#ts2.function.lexize-text">lexize( text )</a></li>
-<li><a href="#ts2.function.lexize-text-text">lexize( text, text
-)</a></li>
-<li><a href="#ts2.function.numnode-tsquery">numnode( tsquery
-)</a></li>
-<li><a href="#ts2.function.parse-oid-text">parse( oid, text
-)</a></li>
-<li><a href="#ts2.function.parse-text">parse( text )</a></li>
-<li><a href="#ts2.function.parse-text-text">parse( text, text
-)</a></li>
-<li><a href=
-"#ts2.function.plainto-tsquery-oid-text">plainto_tsquery( oid, text
-)</a></li>
-<li><a href="#ts2.function.plainto-tsquery-text">plainto_tsquery(
-text )</a></li>
-<li><a href=
-"#ts2.function.plainto-tsquery-text-text">plainto_tsquery( text,
-text )</a></li>
-<li><a href="#ts2.function.prsd-end-internal">prsd_end( internal
-)</a></li>
-<li><a href=
-"#ts2.function.prsd-getlexeme-internal-internal-internal">prsd_getlexeme(
-internal, internal, internal )</a></li>
-<li><a href=
-"#ts2.function.prsd-headline-internal-internal-internal">prsd_headline(
-internal, internal, internal )</a></li>
-<li><a href="#ts2.function.prsd-lextype-internal">prsd_lextype(
-internal )</a></li>
-<li><a href="#ts2.function.prsd-start-internal-integer">prsd_start(
-internal, integer )</a></li>
-<li><a href="#ts2.function.querytree-tsquery">querytree( tsquery
-)</a></li>
-<li><a href="#ts2.function.rank-realARRAY-tsvector-tsquery">rank(
-real[], tsvector, tsquery )</a></li>
-<li><a href=
-"#ts2.function.rank-realARRAY-tsvector-tsquery-integer">rank(
-real[], tsvector, tsquery, integer )</a></li>
-<li><a href="#ts2.function.rank-tsvector-tsquery">rank( tsvector,
-tsquery )</a></li>
-<li><a href="#ts2.function.rank-tsvector-tsquery-integer">rank(
-tsvector, tsquery, integer )</a></li>
-<li><a href=
-"#ts2.function.rank-cd-realARRAY-tsvector-tsquery">rank_cd( real[],
-tsvector, tsquery )</a></li>
-<li><a href=
-"#ts2.function.rank-cd-realARRAY-tsvector-tsquery-integer">rank_cd(
-real[], tsvector, tsquery, integer )</a></li>
-<li><a href="#ts2.function.rank-cd-tsvector-tsquery">rank_cd(
-tsvector, tsquery )</a></li>
-<li><a href=
-"#ts2.function.rank-cd-tsvector-tsquery-integer">rank_cd( tsvector,
-tsquery, integer )</a></li>
-<li><a href="#ts2.function.reset-tsearch">reset_tsearch( )</a></li>
-<li><a href="#ts2.function.rewrite-tsquery-text">rewrite( tsquery,
-text )</a></li>
-<li><a href=
-"#ts2.function.rewrite-tsquery-tsquery-tsquery">rewrite( tsquery,
-tsquery, tsquery )</a></li>
-<li><a href="#ts2.function.rewrite-tsqueryARRAY">rewrite( tsquery[]
-)</a></li>
-<li><a href=
-"#ts2.function.rewrite-accum-tsquery-tsqueryARRAY">rewrite_accum(
-tsquery, tsquery[] )</a></li>
-<li><a href="#ts2.function.rewrite-finish-tsquery">rewrite_finish(
-tsquery )</a></li>
-<li><a href="#ts2.function.set-curcfg-integer">set_curcfg( integer
-)</a></li>
-<li><a href="#ts2.function.set-curcfg-text">set_curcfg( text
-)</a></li>
-<li><a href="#ts2.function.set-curdict-integer">set_curdict(
-integer )</a></li>
-<li><a href="#ts2.function.set-curdict-text">set_curdict( text
-)</a></li>
-<li><a href="#ts2.function.set-curprs-integer">set_curprs( integer
-)</a></li>
-<li><a href="#ts2.function.set-curprs-text">set_curprs( text
-)</a></li>
-<li><a href="#ts2.function.setweight-tsvector-char">setweight(
-tsvector, "char" )</a></li>
-<li><a href="#ts2.function.show-curcfg">show_curcfg( )</a></li>
-<li><a href="#ts2.function.snb-en-init-internal">snb_en_init(
-internal )</a></li>
-<li><a href=
-"#ts2.function.snb-lexize-internal-internal-integer">snb_lexize(
-internal, internal, integer )</a></li>
-<li><a href="#ts2.function.snb-ru-init-internal">snb_ru_init(
-internal )</a></li>
-<li><a href=
-"#ts2.function.snb-ru-init-koi8-internal">snb_ru_init_koi8(
-internal )</a></li>
-<li><a href=
-"#ts2.function.snb-ru-init-utf8-internal">snb_ru_init_utf8(
-internal )</a></li>
-<li><a href="#ts2.function.spell-init-internal">spell_init(
-internal )</a></li>
-<li><a href=
-"#ts2.function.spell-lexize-internal-internal-integer">spell_lexize(
-internal, internal, integer )</a></li>
-<li><a href="#ts2.function.stat-text">stat( text )</a></li>
-<li><a href="#ts2.function.stat-text-text">stat( text, text
-)</a></li>
-<li><a href="#ts2.function.strip-tsvector">strip( tsvector
-)</a></li>
-<li><a href="#ts2.function.syn-init-internal">syn_init( internal
-)</a></li>
-<li><a href=
-"#ts2.function.syn-lexize-internal-internal-integer">syn_lexize(
-internal, internal, integer )</a></li>
-<li><a href="#ts2.function.thesaurus-init-internal">thesaurus_init(
-internal )</a></li>
-<li><a href=
-"#ts2.function.thesaurus-lexize-internal-internal-integer-internal">
-thesaurus_lexize( internal, internal, integer, internal )</a></li>
-<li><a href="#ts2.function.to-tsquery-oid-text">to_tsquery( oid,
-text )</a></li>
-<li><a href="#ts2.function.to-tsquery-text">to_tsquery( text
-)</a></li>
-<li><a href="#ts2.function.to-tsquery-text-text">to_tsquery( text,
-text )</a></li>
-<li><a href="#ts2.function.to-tsvector-oid-text">to_tsvector( oid,
-text )</a></li>
-<li><a href="#ts2.function.to-tsvector-text">to_tsvector( text
-)</a></li>
-<li><a href="#ts2.function.to-tsvector-text-text">to_tsvector(
-text, text )</a></li>
-<li><a href="#ts2.function.token-type">token_type( )</a></li>
-<li><a href="#ts2.function.token-type-integer">token_type( integer
-)</a></li>
-<li><a href="#ts2.function.token-type-text">token_type( text
-)</a></li>
-<li><a href="#ts2.function.ts-debug-text">ts_debug( text )</a></li>
-<li><a href="#ts2.function.tsearch2">tsearch2( )</a></li>
-<li><a href=
-"#ts2.function.tsq-mcontained-tsquery-tsquery">tsq_mcontained(
-tsquery, tsquery )</a></li>
-<li><a href=
-"#ts2.function.tsq-mcontains-tsquery-tsquery">tsq_mcontains(
-tsquery, tsquery )</a></li>
-<li><a href=
-"#ts2.function.tsquery-and-tsquery-tsquery">tsquery_and( tsquery,
-tsquery )</a></li>
-<li><a href="#ts2.function.tsquery-not-tsquery">tsquery_not(
-tsquery )</a></li>
-<li><a href="#ts2.function.tsquery-or-tsquery-tsquery">tsquery_or(
-tsquery, tsquery )</a></li>
-</ul>
-</li>
-</ul>
-<!-- Schema Creation -->
-<!-- publicpublic -->
-<hr />
-<h1>Schema public</h1>
-<p>standard public schema</p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.account" id="public.table.account">account</a></h2>
-<p>An account that may be used for authenticating to Canonical or
-other systems.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.account Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>creation_rationale</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The status of the account.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_status_set</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When the status was last changed.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-Name to display when rendering information about this account.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>openid_identifier</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL DEFAULT
-generate_openid_identifier()</i><br />
-<br />
-The key used to construct an OpenID identity URL for this
-account.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status_comment</td>
-<td>text</td>
-<td><br />
-<br />
-The comment on the status of the account.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>old_openid_identifier</td>
-<td>text</td>
-<td><br />
-<br />
-The previous openid_identifier, used for transitions to the current
-openid_identifier.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.accountpassword">public.accountpassword</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.authtoken">public.authtoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.emailaddress">public.emailaddress</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.openidauthorization">public.openidauthorization</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.openidrpsummary">public.openidrpsummary</a></li>
-</ul>
-<!-- Indexes -->
-account__old_openid_identifier__idx old_openid_identifier 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.accountpassword" id=
-"public.table.accountpassword">accountpassword</a></h2>
-<p>A password used to authenticate an Account.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.accountpassword Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.account">public.account.id</a></td>
-<td>account</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>password</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-SSHA digest encrypted password.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.alllocks" id="public.view.alllocks">alllocks</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.alllocks Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>procpid</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>usename</td>
-<td>name</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>age</td>
-<td>interval</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>relname</td>
-<td>name</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>mode</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>granted</td>
-<td>boolean</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>current_query</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT a.procpid
-, a.usename
-, (now
-     () - a.query_start
-) AS age
-, c.relname
-, l.mode
-, l.granted
-, a.current_query 
-FROM (
-     (pg_locks l 
-        JOIN pg_class c 
-          ON (
-                 (l.relation = c.oid)
-           )
-     )
-LEFT JOIN pg_stat_activity a 
-    ON (
-           (a.procpid = l.pid)
-     )
-);
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.announcement" id=
-"public.table.announcement">announcement</a></h2>
-<p>A project announcement. This is a single item of news or
-information that the project is communicating. Announcements can be
-attached to a Project, a Product or a Distribution.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.announcement Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_announced</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date at which an announcement will become public, if it is
-active. If this is not set then the announcement will not become
-public until someone consciously publishes it (which sets this
-date).</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>url</td>
-<td>text</td>
-<td><br />
-<br />
-A web location for the announcement itself.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether or not the announcement is public. This is TRUE by default,
-but can be set to FALSE if the project "retracts" the
-announcement.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_updated</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.announcement Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>has_target</td>
-<td>CHECK ((((product IS NOT NULL) OR (project IS NOT NULL)) OR
-(distribution IS NOT NULL)))</td>
-</tr>
-<tr class="tr1">
-<td>valid_url</td>
-<td>CHECK (valid_absolute_url(url))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-announcement__distribution__active__idx distribution, active) WHERE
-(distribution IS NOT NULL announcement__product__active__idx
-product, active) WHERE (product IS NOT NULL
-announcement__project__active__idx project, active) WHERE (project
-IS NOT NULL announcement__registrant__idx registrant 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.answercontact" id=
-"public.table.answercontact">answercontact</a></h2>
-<p>Defines the answer contact for a given question target. The
-answer contact will be automatically notified about changes to any
-questions filed on the question target.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.answercontact Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><i>UNIQUE#2</i><br />
-<br />
-The product that the answer contact supports.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The distribution that the answer contact supports.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The sourcepackagename that the answer contact supports.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-The person or team associated with the question target.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date the answer contact was submitted.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.answercontact Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_target</td>
-<td>CHECK ((((product IS NULL) &lt;&gt; (distribution IS NULL)) AND
-((product IS NULL) OR (sourcepackagename IS NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-answercontact__person__idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.archive" id="public.table.archive">archive</a></h2>
-<p>A package archive. Commonly either a distribution's main_archive
-or a ppa's archive.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archive Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Identifies the PPA owner when it has one.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><br />
-<br />
-Allow users to describe their PPAs content.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>enabled</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether or not the PPA is enabled for accepting uploads.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>authorized_size</td>
-<td>integer</td>
-<td><br />
-<br />
-Size, in MiB, allowed for this PPA.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The distribution that uses this archive.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>purpose</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The purpose of this archive, e.g. COMMERCIAL. See the
-ArchivePurpose DBSchema item.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>private</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether or not the archive is private. This affects the global
-visibility of the archive.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sources_cached</td>
-<td>integer</td>
-<td><br />
-<br />
-Number of sources already cached for this archive.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>binaries_cached</td>
-<td>integer</td>
-<td><br />
-<br />
-Number of binaries already cached for this archive.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>package_description_cache</td>
-<td>text</td>
-<td><br />
-<br />
-Text blob containing all source and binary names and descriptions
-concatenated. Used to to build the tsearch indexes on this
-table.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>buildd_secret</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>require_virtualized</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether this archive has binaries that should be built on a virtual
-machine, e.g. PPAs</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL DEFAULT 'default'::text</i><br />
-<br />
-The name of the archive.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>publish</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether this archive should be published.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_updated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-When were the rebuild statistics last updated?</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>total_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-How many source packages are in the rebuild archive
-altogether?</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pending_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-How many packages still need building?</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>succeeded_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-How many source packages were built sucessfully?</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>failed_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-How many packages failed to build?</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>building_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-How many packages are building at present?</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.gpgkey">public.gpgkey.id</a></td>
-<td>signing_key</td>
-<td>integer</td>
-<td><br />
-<br />
-The GpgKey used for signing this archive.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>removed_binary_retention_days</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of days before superseded or deleted binary files are
-expired in the librarian, or zero for never.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>num_old_versions_published</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of versions of a package to keep published before older
-versions are superseded.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-User defined displayname for this archive.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>relative_build_score</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A delta to the build score that is applied to all builds in this
-archive.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archive Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_buildd_secret</td>
-<td>CHECK ((((private = true) AND (buildd_secret IS NOT NULL)) OR
-(private = false)))</td>
-</tr>
-<tr class="tr1">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.archivearch">public.archivearch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archiveauthtoken">public.archiveauthtoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archivedependency">public.archivedependency</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archivepermission">public.archivepermission</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archivesubscriber">public.archivesubscriber</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.build">public.build</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionsourcepackagecache">public.distributionsourcepackagecache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseriespackagecache">public.distroseriespackagecache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagecopyrequest">public.packagecopyrequest</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageupload">public.packageupload</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">public.securebinarypackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securesourcepackagepublishinghistory">public.securesourcepackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease</a></li>
-</ul>
-<!-- Indexes -->
-archive__owner__idx owner archive__signing_key__idx signing_key)
-WHERE (signing_key IS NOT NULL archive_fti fti 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.archivearch" id=
-"public.table.archivearch">archivearch</a></h2>
-<p>ArchiveArch: A table that allows a user to specify which
-architectures an archive requires or supports.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archivearch Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The archive for which an architecture is specified.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.processorfamily">public.processorfamily.id</a></td>
-<td>processorfamily</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The architecture specified for the archive on hand.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.archiveauthtoken" id=
-"public.table.archiveauthtoken">archiveauthtoken</a></h2>
-<p>Authorisation tokens to use in .htaccess for published
-archives.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archiveauthtoken Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive to which this token refers.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person to which this token applies.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date and time this token was created.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_deactivated</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date and time this token was deactivated.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>token</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The token text for this authorisation.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-archiveauthtoken__archive__idx archive
-archiveauthtoken__date_created__idx date_created
-archiveauthtoken__person__idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.archivedependency" id=
-"public.table.archivedependency">archivedependency</a></h2>
-<p>This table maps a given archive to all other archives it should
-depend on.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archivedependency Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Instant when the dependency was created.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The archive where the dependency should be applied.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>dependency</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The archive to depend on.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archivedependency Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>distinct_archives</td>
-<td>CHECK ((archive &lt;&gt; dependency))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-archivedependency__archive__idx archive
-archivedependency__component__idx component
-archivedependency__dependency__idx dependency 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.archivepermission" id=
-"public.table.archivepermission">archivepermission</a></h2>
-<p>ArchivePermission: A record of who has permission to upload and
-approve uploads to an archive (and hence a distribution)</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archivepermission Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date that this permission was created.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person or team to whom the permission is being granted.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>permission</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The permission type being granted.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive to which this permission applies.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td><br />
-<br />
-The component to which this upload permission applies.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The source package name to which this permission applies. This can
-be used to provide package-level permissions to single users.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageset">public.packageset.id</a></td>
-<td>packageset</td>
-<td>integer</td>
-<td><br />
-<br />
-The package set to which this permission applies.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>explicit</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-This flag is set for package sets containing high-profile packages
-that must not break and/or require specialist skills for proper
-handling e.g. the kernel.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archivepermission Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>one_target</td>
-<td>CHECK ((null_count(ARRAY[packageset, component,
-sourcepackagename]) = 2))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-archivepermission__archive__component__permission__idx archive,
-component, permission
-archivepermission__archive__sourcepackagename__permission__idx
-archive, sourcepackagename, permission
-archivepermission__packageset__idx packageset) WHERE (packageset IS
-NOT NULL archivepermission__person__archive__idx person, archive 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.archivesubscriber" id=
-"public.table.archivesubscriber">archivesubscriber</a></h2>
-<p>An authorised person or team subscription to an archive.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.archivesubscriber Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive that the subscriber is authorised to see.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who authorised this subscriber.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date and time this subscription was created.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>subscriber</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person or team that this subscription refers to.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_expires</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date and time this subscription will expire. If NULL, it does
-not expire.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The status of the subscription, e.g. PENDING, ACTIVE, CANCELLING,
-CANCELLED.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><br />
-<br />
-An optional note for the archive owner to describe the
-subscription.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_cancelled</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date and time this subscription was revoked.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>cancelled_by</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who revoked this subscription.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-archivesubscriber__archive__idx archive
-archivesubscriber__cancelled_by__idx cancelled_by) WHERE
-(cancelled_by IS NOT NULL archivesubscriber__date_created__idx
-date_created archivesubscriber__date_expires__idx date_expires)
-WHERE (date_expires IS NOT NULL archivesubscriber__registrant__idx
-registrant archivesubscriber__subscriber__idx subscriber 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.authtoken" id=
-"public.table.authtoken">authtoken</a></h2>
-<p>AuthToken stores one time tokens used by the authentication
-service for validating email addresses and other tasks that require
-verifying an email address is valid such as password recovery and
-account merging. This table will be cleaned occasionally to remove
-expired tokens. Expiry time is not yet defined.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.authtoken Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The timestamp that this request was made.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_consumed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date and time when this token was consumed. It's NULL if it
-hasn't been consumed yet.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>token_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of request, as per dbschema.TokenType.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>token</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The token (not the URL) emailed used to uniquely identify this
-request. This token will be used to generate a URL that when
-clicked on will continue a workflow.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.account">public.account.id</a></td>
-<td>requester</td>
-<td>integer</td>
-<td><br />
-<br />
-The Account that made this request. This will be null for password
-recovery requests.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>requester_email</td>
-<td>text</td>
-<td><br />
-<br />
-The email address that was used to login when making this request.
-This provides an audit trail to help the end user confirm that this
-is a valid request. It is not a link to the EmailAddress table as
-this may be changed after the request is made. This field will be
-null for password recovery requests.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>email</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The email address that this request was sent to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>redirection_url</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-authtoken__date_consumed__idx date_consumed
-authtoken__date_created__idx date_created authtoken__requester__idx
-requester <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.binaryandsourcepackagenameview" id=
-"public.view.binaryandsourcepackagenameview">binaryandsourcepackagenameview</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binaryandsourcepackagenameview Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT binarypackagename.name 
-FROM binarypackagename 
-UNIONSELECT sourcepackagename.name 
-FROM sourcepackagename;
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.binarypackagefile" id=
-"public.table.binarypackagefile">binarypackagefile</a></h2>
-<p>BinaryPackageFile: A soyuz &lt;-&gt; librarian link table. This
-table represents the ownership in the librarian of a file which
-represents a binary package</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagefile Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.binarypackagerelease">public.binarypackagerelease.id</a></td>
-<td>binarypackagerelease</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The binary package which is represented by the file</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>libraryfile</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The file in the librarian which represents the package</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>filetype</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The "type" of the file. E.g. DEB, RPM</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-binarypackagefile_binarypackage_idx binarypackagerelease
-binarypackagefile_libraryfile_idx libraryfile 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.binarypackagefilepublishing" id=
-"public.view.binarypackagefilepublishing">binarypackagefilepublishing</a></h2>
-<p>This view is used mostly by Lucille while performing publishing
-and unpublishing operations. It lists all the files associated with
-a binarypackage and collates all the textual representations needed
-for publishing components etc to allow rapid queries from
-SQLObject.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagefilepublishing Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>distribution</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>binarypackagepublishing</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>componentname</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>libraryfilealiasfilename</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sourcepackagename</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>libraryfilealias</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>distroseriesname</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>architecturetag</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>publishingstatus</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>archive</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT (
-     (
-           (libraryfilealias.id)::text || '.'::text
-     ) || 
-     (securebinarypackagepublishinghistory.id)::text
-) AS id
-, distroseries.distribution
-, securebinarypackagepublishinghistory.id AS binarypackagepublishing
-, component.name AS componentname
-, libraryfilealias.filename AS libraryfilealiasfilename
-, sourcepackagename.name AS sourcepackagename
-, binarypackagefile.libraryfile AS libraryfilealias
-, distroseries.name AS distroseriesname
-, distroarchseries.architecturetag
-, securebinarypackagepublishinghistory.status AS publishingstatus
-, securebinarypackagepublishinghistory.pocket
-, securebinarypackagepublishinghistory.archive 
-FROM (
-     (
-           (
-                 (
-                       (
-                             (
-                                   (
-                                         (
-                                               (securebinarypackagepublishinghistory 
-                                                  JOIN binarypackagerelease 
-                                                    ON (
-                                                           (securebinarypackagepublishinghistory.binarypackagerelease = binarypackagerelease.id)
-                                                     )
-                                               )
-                                            JOIN build 
-                                              ON (
-                                                     (binarypackagerelease.build = build.id)
-                                               )
-                                         )
-                                      JOIN sourcepackagerelease 
-                                        ON (
-                                               (build.sourcepackagerelease = sourcepackagerelease.id)
-                                         )
-                                   )
-                                JOIN sourcepackagename 
-                                  ON (
-                                         (sourcepackagerelease.sourcepackagename = sourcepackagename.id)
-                                   )
-                             )
-                          JOIN binarypackagefile 
-                            ON (
-                                   (binarypackagefile.binarypackagerelease = binarypackagerelease.id)
-                             )
-                       )
-                    JOIN libraryfilealias 
-                      ON (
-                             (binarypackagefile.libraryfile = libraryfilealias.id)
-                       )
-                 )
-              JOIN distroarchseries 
-                ON (
-                       (securebinarypackagepublishinghistory.distroarchseries = distroarchseries.id)
-                 )
-           )
-        JOIN distroseries 
-          ON (
-                 (distroarchseries.distroseries = distroseries.id)
-           )
-     )
-  JOIN component 
-    ON (
-           (securebinarypackagepublishinghistory.component = component.id)
-     )
-)
-WHERE (securebinarypackagepublishinghistory.dateremoved IS NULL);
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.binarypackagename" id=
-"public.table.binarypackagename">binarypackagename</a></h2>
-<p>BinaryPackageName: A soyuz binary package name.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagename Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-A lowercase name identifying one or more binarypackages</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagename Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.binarypackagerelease">public.binarypackagerelease</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseriespackagecache">public.distroseriespackagecache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageselection">public.packageselection</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.potemplate">public.potemplate</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.binarypackagepublishinghistory" id=
-"public.view.binarypackagepublishinghistory">binarypackagepublishinghistory</a></h2>
-<p>View on SecureBinaryPackagePublishingHistory that restricts
-access to embargoed entries</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagepublishinghistory Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>binarypackagerelease</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>component</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>section</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>priority</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>archive</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datepublished</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datesuperseded</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>supersededby</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datemadepending</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>scheduleddeletiondate</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dateremoved</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>removed_by</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>removal_comment</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>embargo</td>
-<td>boolean</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>embargolifted</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT securebinarypackagepublishinghistory.id
-, securebinarypackagepublishinghistory.binarypackagerelease
-, securebinarypackagepublishinghistory.status
-, securebinarypackagepublishinghistory.component
-, securebinarypackagepublishinghistory.section
-, securebinarypackagepublishinghistory.priority
-, securebinarypackagepublishinghistory.distroarchseries
-, securebinarypackagepublishinghistory.pocket
-, securebinarypackagepublishinghistory.archive
-, securebinarypackagepublishinghistory.datecreated
-, securebinarypackagepublishinghistory.datepublished
-, securebinarypackagepublishinghistory.datesuperseded
-, securebinarypackagepublishinghistory.supersededby
-, securebinarypackagepublishinghistory.datemadepending
-, securebinarypackagepublishinghistory.scheduleddeletiondate
-, securebinarypackagepublishinghistory.dateremoved
-, securebinarypackagepublishinghistory.removed_by
-, securebinarypackagepublishinghistory.removal_comment
-, securebinarypackagepublishinghistory.embargo
-, securebinarypackagepublishinghistory.embargolifted 
-FROM securebinarypackagepublishinghistory 
-WHERE (securebinarypackagepublishinghistory.embargo = false);
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.binarypackagerelease" id=
-"public.table.binarypackagerelease">binarypackagerelease</a></h2>
-<p>BinaryPackageRelease: A soyuz binary package representation.
-This table stores the records for each binary package uploaded into
-the system. Each sourcepackagerelease may build various
-binarypackages on various architectures.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagerelease Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.binarypackagename">public.binarypackagename.id</a></td>
-<td>binarypackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-A reference to the name of the binary package</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>version</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The version of the binary package. E.g. "1.0-2"</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A summary of the binary package. Commonly used on listings of
-binary packages</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A longer more detailed description of the binary package</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.build">public.build.id</a></td>
-<td>build</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-The build in which this binarypackage was produced</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>binpackageformat</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The binarypackage format. E.g. RPM, DEB etc</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive component that this binarypackage is in. E.g. main,
-universe etc</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.section">public.section.id</a></td>
-<td>section</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive section that this binarypackage is in. E.g. devel,
-libdevel, editors</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>priority</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The priority that this package has. E.g. Base, Standard, Extra,
-Optional</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>shlibdeps</td>
-<td>text</td>
-<td><br />
-<br />
-The shared library dependencies of this binary package</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>depends</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages this binarypackage depends on</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>recommends</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages this binarypackage recommends. Recommended
-packages often enhance the behaviour of a package.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>suggests</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages this binarypackage suggests.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>conflicts</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages this binarypackage conflicts with.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>replaces</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages this binarypackage replaces files in. Often
-this is used to provide an upgrade path between two binarypackages
-of different names</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>provides</td>
-<td>text</td>
-<td><br />
-<br />
-The list of virtual packages (or real packages under some
-circumstances) which this binarypackage provides.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>essential</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-Whether or not this binarypackage is essential to the smooth
-operation of a base system</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>installedsize</td>
-<td>integer</td>
-<td><br />
-<br />
-What the installed size of the binarypackage is. This is
-represented as a number of kilobytes of storage.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>architecturespecific</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-This field indicates whether or not a binarypackage is
-architecture-specific. If it is not specific to any given
-architecture then it can automatically be included in all the
-distroarchseries which pertain.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pre_depends</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages this binary requires to be installed
-beforehand in apt/dpkg format, as it is in control file
-"Pre-Depends:" field.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>enhances</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages pointed as "enhanced" after the installation
-of this package, as it is in control file "Enhances:" field.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>breaks</td>
-<td>text</td>
-<td><br />
-<br />
-The list of packages which will be broken by the installtion of
-this package, as it is in the control file "Breaks:" field.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.binarypackagerelease Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_version</td>
-<td>CHECK (valid_debian_version(version))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.binarypackagefile">public.binarypackagefile</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">public.securebinarypackagepublishinghistory</a></li>
-</ul>
-<!-- Indexes -->
-binarypackagerelease_build_idx build binarypackagerelease_fti fti
-binarypackagerelease_version_idx version
-binarypackagerelease_version_sort debversion_sort_key(version) 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bounty" id="public.table.bounty">bounty</a></h2>
-<p>A set of bounties for work to be done by the open source
-community. These bounties will initially be offered only by
-Canonical, but later we will create the ability for people to offer
-the bounties themselves, using us as a clearing house.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bounty Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>usdvalue</td>
-<td>numeric(10,2)</td>
-<td><i>NOT NULL</i><br />
-<br />
-This is the ESTIMATED value in US Dollars of the bounty. We say
-"estimated" because the bounty might one day be offered in one of
-several currencies, or people might contribute different amounts in
-different currencies to each bounty. This field will reflect an
-estimate based on recent currency exchange rates of the value of
-this bounty in USD.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>difficulty</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-An estimate of the difficulty of the bounty, as a
-dbschema.BountyDifficulty.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>reviewer</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who will review this bounty regularly for progress. The
-reviewer is the person who is responsible for establishing when the
-bounty is complete.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, ('now'::text)::timestamp(6)
-with time zone)</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who created the bounty. The owner can update the
-specification of the bounty, and appoints the reviewer.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>deadline</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>claimant</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>dateclaimed</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>bountystatus</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The current status of this bounty - an indicator of whether or not
-it is open, closed, or withdrawn.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.bountymessage">public.bountymessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bountysubscription">public.bountysubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionbounty">public.distributionbounty</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productbounty">public.productbounty</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.projectbounty">public.projectbounty</a></li>
-</ul>
-<!-- Indexes -->
-bounty_usdvalue_idx usdvalue <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bountymessage" id=
-"public.table.bountymessage">bountymessage</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bountymessage Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bounty">public.bounty.id</a></td>
-<td>bounty</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bountymessage_bounty_idx bounty <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bountysubscription" id=
-"public.table.bountysubscription">bountysubscription</a></h2>
-<p>This table records whether or not someone it interested in a
-bounty. Subscribers will show up on the page with the bounty
-details.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bountysubscription Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bounty">public.bounty.id</a></td>
-<td>bounty</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bounty to which the person is subscribed.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The person being subscribed to this bounty.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branch" id="public.table.branch">branch</a></h2>
-<p>Bzr branch</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branch Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><br />
-<br />
-A single paragraph description of the branch</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>author</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>home_page</td>
-<td>text</td>
-<td><br />
-<br />
-This column is deprecated and to be removed soon.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>url</td>
-<td>text</td>
-<td><i>UNIQUE</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-Notes on the current status of the branch</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lifecycle_status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-Authors assesment of the branchs maturity</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_mirrored</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The time when the branch was last mirrored.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>last_mirror_attempt</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>mirror_failures</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>mirror_status_message</td>
-<td>text</td>
-<td><br />
-<br />
-The last message we got when mirroring this branch.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_scanned</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The time when the branch was last scanned.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>last_scanned_id</td>
-<td>text</td>
-<td><br />
-<br />
-The revision ID of the branch when it was last scanned.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_mirrored_id</td>
-<td>text</td>
-<td><br />
-<br />
-The revision ID of the branch when it was last mirrored.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>revision_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of revisions in the associated bazaar branch
-revision_history.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>next_mirror_time</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The time when we will next mirror this branch (NULL means never).
-This will be set automatically by pushing to a hosted branch,
-which, once mirrored, will be set back to NULL.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>private</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-If the branch is private, then only the owner and subscribers of
-the branch can see it.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>branch_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Branches are currently one of HOSTED (1), MIRRORED (2), or IMPORTED
-(3).</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>reviewer</td>
-<td>integer</td>
-<td><br />
-<br />
-The reviewer (person or) team are able to transition merge
-proposals targetted at the branch throught the CODE_APPROVED
-state.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.branchmergerobot">public.branchmergerobot.id</a></td>
-<td>merge_robot</td>
-<td>integer</td>
-<td><br />
-<br />
-The robot that controls the automatic landing onto this
-branch.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>merge_control_status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-When there is no merge_robot set, the merge_control_status must be
-set to Manual. If a merge_robot is set, then the branch
-merge_control_status can be set to Automatic which means that the
-merge robot will start merging the branches.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_last_modified</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-A branch is modified any time a user updates something using a
-view, a new revision for the branch is scanned, or the branch is
-linked to a bug, blueprint or merge proposal.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The user that registered the branch.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>branch_format</td>
-<td>integer</td>
-<td><br />
-<br />
-The bzr branch format</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>repository_format</td>
-<td>integer</td>
-<td><br />
-<br />
-The bzr repository format</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>metadir_format</td>
-<td>integer</td>
-<td><br />
-<br />
-The bzr metadir format</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>stacked_on</td>
-<td>integer</td>
-<td><br />
-<br />
-The Launchpad branch that this branch is stacked on (if any).</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The distribution series that the branch belongs to.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The source package this is a branch of.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>owner_name</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>target_suffix</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>unique_name</td>
-<td>text</td>
-<td><i>UNIQUE</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>size_on_disk</td>
-<td>bigint</td>
-<td><br />
-<br />
-The size in bytes of this branch in the mirrored area.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branch Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>branch_merge_control</td>
-<td>CHECK (((merge_robot IS NULL) OR (merge_control_status = ANY
-(ARRAY[3, 4]))))</td>
-</tr>
-<tr class="tr1">
-<td>branch_type_url_consistent</td>
-<td>CHECK (((((branch_type = 2) AND (url IS NOT NULL)) OR
-((branch_type = ANY (ARRAY[1, 3])) AND (url IS NULL))) OR
-(branch_type = 4)))</td>
-</tr>
-<tr class="tr0">
-<td>branch_url_no_trailing_slash</td>
-<td>CHECK ((url !~~ '%/'::text))</td>
-</tr>
-<tr class="tr1">
-<td>branch_url_not_supermirror</td>
-<td>CHECK ((url !~~ 'http://bazaar.launchpad.net/%'::text))</td>
-</tr>
-<tr class="tr0">
-<td>one_container</td>
-<td>CHECK ((((distroseries IS NULL) = (sourcepackagename IS NULL))
-AND ((distroseries IS NULL) OR (product IS NULL))))</td>
-</tr>
-<tr class="tr1">
-<td>valid_home_page</td>
-<td>CHECK (valid_absolute_url(home_page))</td>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_branch_name(name))</td>
-</tr>
-<tr class="tr1">
-<td>valid_url</td>
-<td>CHECK (valid_absolute_url(url))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.branch">public.branch</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.branchjob">public.branchjob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchrevision">public.branchrevision</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchsubscription">public.branchsubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugbranch">public.bugbranch</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.codeimport">public.codeimport</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productseries">public.productseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.seriessourcepackagebranch">public.seriessourcepackagebranch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specificationbranch">public.specificationbranch</a></li>
-</ul>
-<!-- Indexes -->
-branch__date_created__idx date_created
-branch__last_scanned__owner__idx last_scanned, owner) WHERE
-(last_scanned IS NOT NULL branch__next_mirror_time__idx
-next_mirror_time) WHERE (next_mirror_time IS NOT NULL
-branch__owner_name__idx owner_name branch__private__idx private
-branch__product__id__idx product, id branch__registrant__idx
-registrant branch__reviewer__idx reviewer branch__stacked_on__idx
-stacked_on) WHERE (stacked_on IS NOT NULL
-branch__target_suffix__idx target_suffix branch_author_idx author
-branch_owner_idx owner <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchjob" id=
-"public.table.branchjob">branchjob</a></h2>
-<p>Contains references to jobs that are executed for a branch.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchjob Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.job">public.job.id</a></td>
-<td>job</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-A reference to a row in the Job table that has all the common job
-details.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>branch</td>
-<td>integer</td>
-<td><br />
-<br />
-The branch that this job is for.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>job_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of job, like new revisions, or attribute change.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>json_data</td>
-<td>text</td>
-<td><br />
-<br />
-Data that is specific to the type of job, whether this be the
-revisions to send email out for, or the changes that were recorded
-for the branch.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-branchjob__branch__idx branch <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchmergeproposal" id=
-"public.table.branchmergeproposal">branchmergeproposal</a></h2>
-<p>Branch merge proposals record the intent of landing (or merging)
-one branch on another.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchmergeproposal Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person that created the merge proposal.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>source_branch</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The branch where the work is being written. This branch contains
-the changes that the registrant wants to land.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>target_branch</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The branch where the user wants the changes from the source branch
-to be merged into.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>dependent_branch</td>
-<td>integer</td>
-<td><br />
-<br />
-If the source branch was not branched off the target branch, then
-this is considered the dependent_branch.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-Used to write other information about the branch, like test
-URLs.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_merged</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-This is the date that merge occurred.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>merged_revno</td>
-<td>integer</td>
-<td><br />
-<br />
-This is the revision number of the revision on the target branch
-that includes the merge from the source branch.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>merge_reporter</td>
-<td>integer</td>
-<td><br />
-<br />
-This is the user that marked the proposal as merged.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When the registrant created the merge proposal.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>commit_message</td>
-<td>text</td>
-<td><br />
-<br />
-This is the commit message that is to be used when the branch is
-landed by a robot.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>queue_position</td>
-<td>integer</td>
-<td><br />
-<br />
-The position on the merge proposal in the overall landing queue. If
-the branch has a merge_robot set and the merge robot controls
-multiple branches then the queue position is unique over all the
-queued merge proposals for the landing robot.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>queue_status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-This is the current state of the merge proposal.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_review_requested</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date that the merge proposal enters the REVIEW_REQUESTED state.
-This is stored so that we can determine how long a branch has been
-waiting for code approval.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>reviewer</td>
-<td>integer</td>
-<td><br />
-<br />
-The individual who said that the code in this branch is OK to
-land.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_reviewed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the reviewer said the code is OK to land.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reviewed_revision_id</td>
-<td>text</td>
-<td><br />
-<br />
-The Bazaar revision ID that was approved to land.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>queuer</td>
-<td>integer</td>
-<td><br />
-<br />
-The individual who submitted the branch to the merge queue. This is
-usually the merge proposal registrant.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_queued</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the queuer submitted the branch to the merge queue.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>queued_revision_id</td>
-<td>text</td>
-<td><br />
-<br />
-The Bazaar revision ID that is queued to land.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>merger</td>
-<td>integer</td>
-<td><br />
-<br />
-The merger is the person who merged the branch.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>merged_revision_id</td>
-<td>text</td>
-<td><br />
-<br />
-The Bazaar revision ID that was actually merged. If the owner of
-the source branch is a trusted person, this may be different than
-the revision_id that was actually queued or reviewed.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_merge_started</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-If the merge is performed by a bot the time the merge was started
-is recorded otherwise it is NULL.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_merge_finished</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-If the merge is performed by a bot the time the merge was finished
-is recorded otherwise it is NULL.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>merge_log_file</td>
-<td>integer</td>
-<td><br />
-<br />
-If the merge is performed by a bot the log file is accessible from
-the librarian.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal.id</a></td>
-<td>superseded_by</td>
-<td>integer</td>
-<td><br />
-<br />
-The proposal to merge has been superceded by this one.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>root_message_id</td>
-<td>text</td>
-<td><br />
-<br />
-The root message of this BranchMergeProposal's mail thread.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.staticdiff">public.staticdiff.id</a></td>
-<td>review_diff</td>
-<td>integer</td>
-<td><br />
-<br />
-The diff to use for review purposes.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.previewdiff">public.previewdiff.id</a></td>
-<td>merge_diff</td>
-<td>integer</td>
-<td><br />
-<br />
-The diff showing the predicted result of a merge.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchmergeproposal Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>different_branches</td>
-<td>CHECK ((((source_branch &lt;&gt; target_branch) AND
-(dependent_branch &lt;&gt; source_branch)) AND (dependent_branch
-&lt;&gt; target_branch)))</td>
-</tr>
-<tr class="tr1">
-<td>positive_revno</td>
-<td>CHECK (((merged_revno IS NULL) OR (merged_revno &gt; 0)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposaljob">public.branchmergeproposaljob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codereviewmessage">public.codereviewmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codereviewvote">public.codereviewvote</a></li>
-</ul>
-<!-- Indexes -->
-branchmergeproposal__dependent_branch__idx dependent_branch
-branchmergeproposal__merge_diff__idx merge_diff
-branchmergeproposal__merge_reporter__idx merge_reporter) WHERE
-(merge_reporter IS NOT NULL branchmergeproposal__merger__idx merger
-branchmergeproposal__queuer__idx queuer
-branchmergeproposal__review_diff__idx review_diff
-branchmergeproposal__reviewer__idx reviewer
-branchmergeproposal__source_branch__idx source_branch
-branchmergeproposal__superseded_by__idx superseded_by) WHERE
-(superseded_by IS NOT NULL branchmergeproposal__target_branch__idx
-target_branch <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchmergeproposaljob" id=
-"public.table.branchmergeproposaljob">branchmergeproposaljob</a></h2>
-<p>Contains references to jobs that are executed for a branch merge
-proposal.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchmergeproposaljob Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.job">public.job.id</a></td>
-<td>job</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-A reference to a row in the Job table that has all the common job
-details.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal.id</a></td>
-<td>branch_merge_proposal</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The branch merge proposal that this job is for.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>job_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of job, like new proposal, review comment, or new review
-requested.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>json_data</td>
-<td>text</td>
-<td><br />
-<br />
-Data that is specific to the type of job, normally references to
-code review messages and or votes.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-branchmergeproposaljob__branch_merge_proposal__idx
-branch_merge_proposal <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchmergerobot" id=
-"public.table.branchmergerobot">branchmergerobot</a></h2>
-<p>In order to have a single merge robot be able to control
-landings on multiple branches, we need some robot entity.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchmergerobot Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person that created the merge robot.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person or team that is able to update the robot and manage the
-landing queue.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The name of the robot. This is unique for the owner.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-Any interesting comments about the robot itself.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When this robot was created.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.branch">public.branch</a></li>
-</ul>
-<!-- Indexes -->
-branchmergerobot__owner__idx owner
-branchmergerobot__registrant__idx registrant 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchrevision" id=
-"public.table.branchrevision">branchrevision</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchrevision Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#3 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sequence</td>
-<td>integer</td>
-<td><i>UNIQUE#4</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>branch</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 UNIQUE#3 UNIQUE#4 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.revision">public.revision.id</a></td>
-<td>revision</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchsubscription" id=
-"public.table.branchsubscription">branchsubscription</a></h2>
-<p>An association between a person or team and a bazaar branch.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchsubscription Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The person or team associated with the branch.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>branch</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The branch associated with the person or team.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>notification_level</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The level of email the person wants to receive from branch
-updates.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>max_diff_lines</td>
-<td>integer</td>
-<td><br />
-<br />
-If the generated diff for a revision is larger than this number,
-then the diff is not sent in the notification email.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>review_level</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The level of email the person wants to receive from review
-activity</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-branchsubscription__branch__idx branch <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.branchvisibilitypolicy" id=
-"public.table.branchvisibilitypolicy">branchvisibilitypolicy</a></h2>
-<p>Defines the policy for the initial visibility of branches.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchvisibilitypolicy Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td><br />
-<br />
-Even though projects don't directly have branches themselves, if a
-product of the project does not specify its own branch visibility
-policies, those of the project are used.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The product that the visibility policies apply to.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>team</td>
-<td>integer</td>
-<td><br />
-<br />
-Refers to the team that the policy applies to. NULL is used to
-indicate ALL people, as there is no team defined for
-*everybody*.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>policy</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-An enumerated type, one of PUBLIC or PRIVATE. PUBLIC is the default
-value.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchvisibilitypolicy Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>only_one_target</td>
-<td>CHECK (((project IS NULL) &lt;&gt; (product IS NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-branchvisibilitypolicy__product__idx product) WHERE (product IS NOT
-NULL branchvisibilitypolicy__project__idx project) WHERE (project
-IS NOT NULL branchvisibilitypolicy__team__idx team) WHERE (team IS
-NOT NULL <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.branchwithsortkeys" id=
-"public.view.branchwithsortkeys">branchwithsortkeys</a></h2>
-<p>A hack to allow the sorting of queries to Branch by
-human-meaningful keys in the face of limitations in SQLObject. Will
-go away when we start using Storm. This view has all the columns of
-Branch with three extra names joined on to it.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.branchwithsortkeys Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>owner</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>product</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>author</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>home_page</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>url</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lifecycle_status</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_mirrored</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>last_mirror_attempt</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>mirror_failures</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>mirror_status_message</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_scanned</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>last_scanned_id</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_mirrored_id</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>revision_count</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>next_mirror_time</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>private</td>
-<td>boolean</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>branch_type</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>reviewer</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>merge_robot</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>merge_control_status</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_last_modified</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>registrant</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>branch_format</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>repository_format</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>metadir_format</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>stacked_on</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>product_name</td>
-<td>text</td>
-<td><br />
-<br />
-Branch.product.name</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>author_name</td>
-<td>text</td>
-<td><br />
-<br />
-Branch.author.displayname</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>owner_name</td>
-<td>text</td>
-<td><br />
-<br />
-Branch.owner.displayname</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT branch.id
-, branch.title
-, branch.summary
-, branch.owner
-, branch.product
-, branch.author
-, branch.name
-, branch.home_page
-, branch.url
-, branch.whiteboard
-, branch.lifecycle_status
-, branch.last_mirrored
-, branch.last_mirror_attempt
-, branch.mirror_failures
-, branch.mirror_status_message
-, branch.last_scanned
-, branch.last_scanned_id
-, branch.last_mirrored_id
-, branch.date_created
-, branch.revision_count
-, branch.next_mirror_time
-, branch.private
-, branch.branch_type
-, branch.reviewer
-, branch.merge_robot
-, branch.merge_control_status
-, branch.date_last_modified
-, branch.registrant
-, branch.branch_format
-, branch.repository_format
-, branch.metadir_format
-, branch.stacked_on
-, product.name AS product_name
-, author.displayname AS author_name
-, owner.displayname AS owner_name 
-FROM (
-     (
-           (branch 
-              JOIN person owner 
-                ON (
-                       (branch.owner = owner.id)
-                 )
-           )
-   LEFT JOIN product 
-          ON (
-                 (branch.product = product.id)
-           )
-     )
-LEFT JOIN person author 
-    ON (
-           (branch.author = author.id)
-     )
-);
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bug" id="public.table.bug">bug</a></h2>
-<p>A software bug that requires fixing. This particular bug may be
-linked to one or more products or source packages to identify the
-location(s) that this bug is found.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bug Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE</i><br />
-<br />
-A lowercase name uniquely identifying the bug</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A detailed description of the bug. Initially this will be set to
-the contents of the initial email or bug filing comment, but later
-it can be edited to give a more accurate description of the bug
-itself rather than the symptoms observed by the reporter.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>duplicateof</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>private</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Is this bug private? If so, only explicit subscribers will be able
-to see it</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>security_related</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Is this bug a security issue?</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_last_updated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_made_private</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>who_made_private</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_message</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the last BugMessage was attached to this Bug. Maintained by a
-trigger on the BugMessage table.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>number_of_duplicates</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of bugs marked as duplicates of this bug, populated by a
-trigger after setting the duplicateof of bugs.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>message_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of messages (currently just comments) on this bugbug,
-maintained by the set_bug_message_count_t trigger.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>users_affected_count</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of users affected by this bug, maintained by the
-set_bug_users_affected_count_t trigger.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>users_unaffected_count</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>hotness</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The relevance of this bug. This value is computed periodically
-using bug_affects_person and other bug values.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bug Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>notduplicateofself</td>
-<td>CHECK ((NOT (id = duplicateof)))</td>
-</tr>
-<tr class="tr1">
-<td>sane_description</td>
-<td>CHECK (((ltrim(description) &lt;&gt; ''::text) AND
-(char_length(description) &lt;= 50000)))</td>
-</tr>
-<tr class="tr0">
-<td>valid_bug_name</td>
-<td>CHECK (valid_bug_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.bug">public.bug</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugactivity">public.bugactivity</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugaffectsperson">public.bugaffectsperson</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugattachment">public.bugattachment</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugbranch">public.bugbranch</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugcve">public.bugcve</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugmessage">public.bugmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnomination">public.bugnomination</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnotification">public.bugnotification</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugpackageinfestation">public.bugpackageinfestation</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugproductinfestation">public.bugproductinfestation</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugsubscription">public.bugsubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugwatch">public.bugwatch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwsubmissionbug">public.hwsubmissionbug</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mentoringoffer">public.mentoringoffer</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.questionbug">public.questionbug</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specificationbug">public.specificationbug</a></li>
-</ul>
-<!-- Indexes -->
-bug__date_last_message__idx date_last_message
-bug__date_last_updated__idx date_last_updated bug__datecreated__idx
-datecreated bug__hotness__idx hotness
-bug__users_affected_count__idx users_affected_count
-bug__users_unaffected_count__idx users_unaffected_count
-bug__who_made_private__idx who_made_private) WHERE
-(who_made_private IS NOT NULL bug_duplicateof_idx duplicateof
-bug_fti fti bug_owner_idx owner <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugactivity" id=
-"public.table.bugactivity">bugactivity</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugactivity Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datechanged</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>whatchanged</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>oldvalue</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>newvalue</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>message</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugactivity_bug_datechanged_idx bug, datechanged
-bugactivity_datechanged_idx datechanged
-bugactivity_person_datechanged_idx person, datechanged 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugaffectsperson" id=
-"public.table.bugaffectsperson">bugaffectsperson</a></h2>
-<p>This table maintains a mapping between bugs and users indicating
-that they are affected by that bug. The value is calculated and
-cached in the Bug.users_affected_count column.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugaffectsperson Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bug affecting this person.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The person affected by this bug.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>affected</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugaffectsperson__person__idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugattachment" id=
-"public.table.bugattachment">bugattachment</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugattachment Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>libraryfile</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>type</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugattachment Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugattachment_libraryfile_idx libraryfile bugattachment_message_idx
-message <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugbranch" id=
-"public.table.bugbranch">bugbranch</a></h2>
-<p>A branch related to a bug, most likely a branch for fixing the
-bug.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugbranch Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bug associated with this branch.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>branch</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The branch associated to the bug.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.revision">public.revision.id</a></td>
-<td>revision_hint</td>
-<td>integer</td>
-<td><br />
-<br />
-An optional revision at which this branch became interesting to
-this bug, and/or may contain a fix for the bug.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-Additional information about the status of the bugfix in this
-branch.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who linked the bug to the branch.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugbranch__registrant__idx registrant <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugcve" id="public.table.bugcve">bugcve</a></h2>
-<p>A table that records the link between a given malone bug number,
-and a CVE entry.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugcve Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.cve">public.cve.id</a></td>
-<td>cve</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugcve_cve_index cve <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugmessage" id=
-"public.table.bugmessage">bugmessage</a></h2>
-<p>This table maps a message to a bug. In other words, it shows
-that a particular message is associated with a particular bug.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugmessage Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bugwatch">public.bugwatch.id</a></td>
-<td>bugwatch</td>
-<td>integer</td>
-<td><i>UNIQUE#2</i><br />
-<br />
-The external bug this bug comment was imported from.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>remote_comment_id</td>
-<td>text</td>
-<td><i>UNIQUE#2</i><br />
-<br />
-The id this bug comment has in the external bug tracker, if it is
-an imported comment. If it is NULL while having a bugwatch set,
-this comment was added in Launchpad and needs to be pushed to the
-external bug tracker.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>visible</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-If false, the bug comment is hidden and should not be shown in any
-UI.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugmessage Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>imported_comment</td>
-<td>CHECK (((remote_comment_id IS NULL) OR (bugwatch IS NOT
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugmessage_message_idx message <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugnomination" id=
-"public.table.bugnomination">bugnomination</a></h2>
-<p>A bug nominated for fixing in a distroseries or
-productseries</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugnomination Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The bug being nominated.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The distroseries for which the bug is nominated.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.productseries">public.productseries.id</a></td>
-<td>productseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The productseries for which the bug is nominated.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The status of the nomination.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date the nomination was submitted.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_decided</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date the nomination was approved or declined.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person that submitted the nomination</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>decider</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who approved or declined the nomination</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugnomination Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>distroseries_or_productseries</td>
-<td>CHECK (((distroseries IS NULL) &lt;&gt; (productseries IS
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugnomination__bug__idx bug bugnomination__decider__idx decider)
-WHERE (decider IS NOT NULL bugnomination__owner__idx owner 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugnotification" id=
-"public.table.bugnotification">bugnotification</a></h2>
-<p>The text representation of changes to a bug, which are used to
-send email notifications to bug changes.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugnotification Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bug that was changed.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The message the contains the textual representation of the
-change.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>is_comment</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-Is the change a comment addition.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_emailed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When this notification was emailed to the bug subscribers.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.bugnotificationattachment">public.bugnotificationattachment</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnotificationrecipient">public.bugnotificationrecipient</a></li>
-</ul>
-<!-- Indexes -->
-bugnotification__date_emailed__idx date_emailed 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugnotificationattachment" id=
-"public.table.bugnotificationattachment">bugnotificationattachment</a></h2>
-<p>Attachments to be attached to a bug notification.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugnotificationattachment Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A message to be attached to the sent bug notification. It will be
-attached as a mime/multipart part, with a content type of
-message/rfc822.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.bugnotification">public.bugnotification.id</a></td>
-<td>bug_notification</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The bug notification, to which things should be attached to.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugnotificationattachment__bug_notification__idx bug_notification
-bugnotificationattachment__message__idx message 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugnotificationrecipient" id=
-"public.table.bugnotificationrecipient">bugnotificationrecipient</a></h2>
-<p>The recipient for a bug notification.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugnotificationrecipient Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.bugnotification">public.bugnotification.id</a></td>
-<td>bug_notification</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The notification this recipient should get.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The person who should receive this notification.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>reason_header</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The reason this person is receiving this notification (the value
-for the X-Launchpad-Message-Rationale header).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reason_body</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A line of text describing the reason this person is receiving this
-notification (to be included in the email message).</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugpackageinfestation" id=
-"public.table.bugpackageinfestation">bugpackageinfestation</a></h2>
-<p>A BugPackageInfestation records the impact that a bug is known
-to have on a specific sourcepackagerelease. This allows us to track
-the versions of a package that are known to be affected or
-unaffected by a bug.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugpackageinfestation Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The Bug that infests this source package release.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease.id</a></td>
-<td>sourcepackagerelease</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The package (software) release that is infested with the bug. This
-points at the specific source package release version, such as
-"apache 2.0.48-1".</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>explicit</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-This field records whether or not the infestation was documented by
-a user of the system, or inferred from some other source such as
-the fact that it is documented to affect prior and subsequent
-releases of the package.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>infestationstatus</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The nature of the bug infestation for this source package release.
-Values are documented in dbschema.BugInfestationStatus, and include
-AFFECTED, UNAFFECTED, FIXED and VICTIMISED. See the dbschema.py
-file for details.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>creator</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who recorded this infestation. Typically, this is the
-user who reports the specific problem on that specific package
-release.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dateverified</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The timestamp when the problem was verified on that specific
-release. This a small step towards a complete workflow for defect
-verification and management on specific releases.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>verifiedby</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who verified that this infestation affects this specific
-package.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lastmodified</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The timestamp when this infestation report was last modified in any
-way. For example, when the infestation was adjusted, or it was
-verified, or otherwise modified.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>lastmodifiedby</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who touched this infestation report last, in any
-way.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugproductinfestation" id=
-"public.table.bugproductinfestation">bugproductinfestation</a></h2>
-<p>A BugProductInfestation records the impact that a bug is known
-to have on a specific productrelease. This allows us to track the
-versions of a product that are known to be affected or unaffected
-by a bug.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugproductinfestation Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The Bug that infests this product release.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.productrelease">public.productrelease.id</a></td>
-<td>productrelease</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The product (software) release that is infested with the bug. This
-points at the specific release version, such as "apache
-2.0.48".</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>explicit</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-This field records whether or not the infestation was documented by
-a user of the system, or inferred from some other source such as
-the fact that it is documented to affect prior and subsequent
-releases of the product.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>infestationstatus</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The nature of the bug infestation for this product release. Values
-are documented in dbschema.BugInfestationStatus, and include
-AFFECTED, UNAFFECTED, FIXED and VICTIMISED. See the dbschema.py
-file for details.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>creator</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who recorded this infestation. Typically, this is the
-user who reports the specific problem on that specific product
-release.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dateverified</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The timestamp when the problem was verified on that specific
-release. This a small step towards a complete workflow for defect
-verification and management on specific releases.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>verifiedby</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who verified that this infestation affects this specific
-product release.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lastmodified</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The timestamp when this infestation report was last modified in any
-way. For example, when the infestation was adjusted, or it was
-verified, or otherwise modified.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>lastmodifiedby</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who touched this infestation report last, in any
-way.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugsubscription" id=
-"public.table.bugsubscription">bugsubscription</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugsubscription Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>subscribed_by</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugsubscription__subscribed_by__idx subscribed_by
-bugsubscription_bug_idx bug bugsubscription_person_idx person 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugtag" id="public.table.bugtag">bugtag</a></h2>
-<p>Attaches simple text tags to a bug.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtag Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bug the tags is attached to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>tag</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The text representation of the tag.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtag Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_tag</td>
-<td>CHECK (valid_name(tag))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugtag__bug__idx bug <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugtask" id="public.table.bugtask">bugtask</a></h2>
-<p>Links a given Bug to a particular (sourcepackagename, distro) or
-product.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtask Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The bug that is assigned to this (sourcepackagename, distro) or
-product.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a> <a href=
-"#public.table.milestone">public.milestone.product#2</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The product in which this bug shows up.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.distribution">public.distribution.id</a>
-<a href=
-"#public.table.milestone">public.milestone.distribution#1</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The distro of the named sourcepackage.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The name of the sourcepackage in which this bug shows up.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.binarypackagename">public.binarypackagename.id</a></td>
-<td>binarypackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The name of the binary package built from the source package. This
-column may only contain a value if this bug task is linked to a
-sourcepackage (not a product)</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The general health of the bug, e.g. Accepted, Rejected, etc.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>priority</td>
-<td>integer</td>
-<td><br />
-<br />
-Obsolete.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>importance</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 5</i><br />
-<br />
-The importance of fixing the bug.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>assignee</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who has been assigned to fix this bug in this product or
-(sourcepackagename, distro)</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_assigned</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date on which the bug in this (sourcepackagename, distro) or
-product was assigned to someone to fix</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, ('now'::text)::timestamp(6)
-with time zone)</i><br />
-<br />
-A timestamp for the creation of this bug assignment. Note that this
-is not the date the bug was created (though it might be), it's the
-date the bug was assigned to this product, which could have come
-later.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.milestone">public.milestone.id#1</a>
-<a href="#public.table.milestone">public.milestone.id#2</a></td>
-<td>milestone</td>
-<td>integer</td>
-<td><br />
-<br />
-A way to mark a bug for grouping purposes, e.g. to say it needs to
-be fixed by version 1.2</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bugwatch">public.bugwatch.id</a></td>
-<td>bugwatch</td>
-<td>integer</td>
-<td><br />
-<br />
-This column allows us to link a bug task to a bug watch. In other
-words, we are connecting the state of the task to the state of the
-bug in a different bug tracking system. To the best of our ability
-we'll try and keep the bug task syncronised with the state of the
-remote bug watch.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>statusexplanation</td>
-<td>text</td>
-<td><br />
-<br />
-A place to store bug task specific information as free text</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>targetnamecache</td>
-<td>text</td>
-<td><br />
-<br />
-A cached value of the target name of this bugtask, to make it
-easier to sort and search on the target name.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_confirmed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug transitioned from an unconfirmed status to a
-confirmed one. If the state regresses to a one that logically
-occurs before Confirmed, e.g., Unconfirmed, this date is
-cleared.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_inprogress</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date on which this bug transitioned from not being in progress
-to a state &gt;= In Progress. If the status moves back to a pre-In
-Progress state, this date is cleared</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_closed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug transitioned to a resolved state, e.g.,
-Rejected, Fix Released, etc. If the state changes back to a
-pre-closed state, this date is cleared</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.productseries">public.productseries.id</a></td>
-<td>productseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The product series to which the bug is targeted</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_incomplete</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_left_new</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug first transitioned out of the NEW
-status.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_triaged</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug transitioned to a status &gt;= TRIAGED.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_fix_committed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug transitioned to a status &gt;=
-FIXCOMMITTED.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_fix_released</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug transitioned to a FIXRELEASED status.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_left_closed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug last transitioned out of a CLOSED
-status.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>hotness_rank</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The hotness bin in which this bugtask appears, as a value from the
-BugTaskHotnessRank enumeration.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_milestone_set</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date when this bug was targed to the milestone that is
-currently set.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtask Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>bugtask_assignment_checks</td>
-<td>CHECK (CASE WHEN (product IS NOT NULL) THEN ((((productseries
-IS NULL) AND (distribution IS NULL)) AND (distroseries IS NULL))
-AND (sourcepackagename IS NULL)) WHEN (productseries IS NOT NULL)
-THEN (((distribution IS NULL) AND (distroseries IS NULL)) AND
-(sourcepackagename IS NULL)) WHEN (distribution IS NOT NULL) THEN
-(distroseries IS NULL) WHEN (distroseries IS NOT NULL) THEN true
-ELSE false END)</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugtask__assignee__idx assignee bugtask__binarypackagename__idx
-binarypackagename) WHERE (binarypackagename IS NOT NULL
-bugtask__bug__idx bug bugtask__date_incomplete__idx
-date_incomplete) WHERE (date_incomplete IS NOT NULL
-bugtask__datecreated__idx datecreated
-bugtask__distribution__sourcepackagename__idx distribution,
-sourcepackagename bugtask__distroseries__sourcepackagename__idx
-distroseries, sourcepackagename bugtask__milestone__idx milestone
-bugtask__owner__idx owner bugtask__productseries__idx
-productseries) WHERE (productseries IS NOT NULL
-bugtask__sourcepackagename__idx sourcepackagename) WHERE
-(sourcepackagename IS NOT NULL bugtask__status__idx status
-bugtask_fti fti <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugtracker" id=
-"public.table.bugtracker">bugtracker</a></h2>
-<p>A bug tracker in some other project. Malone allows us to link
-Malone bugs with bugs recorded in other bug tracking systems, and
-to keep the status of the relevant bug task in sync with the status
-in that upstream bug tracker. So, for example, you might note that
-Malone bug #43224 is the same as a bug in the Apache bugzilla,
-number 534536. Then when the upstream guys mark that bug fixed in
-their bugzilla, Malone know that the bug is fixed upstream.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtracker Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>bugtrackertype</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of bug tracker, a pointer to the table of bug tracker
-types. Currently we know about debbugs and bugzilla bugtrackers,
-and plan to support roundup and sourceforge as well.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The unique name of this bugtracker, allowing us to refer to it
-directly.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A title for the bug tracker, used in listings of all the bug
-trackers and also displayed at the top of the descriptive page for
-the bug tracker.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><br />
-<br />
-A brief summary of this bug tracker, which might for example list
-any interesting policies regarding the use of the bug tracker. The
-summary is displayed in bold at the top of the bug tracker
-page.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>baseurl</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The base URL for this bug tracker. Using our knowledge of the
-bugtrackertype, and the details in the BugWatch table we are then
-able to calculate relative URLs for relevant pages in the bug
-tracker based on this baseurl.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who created this bugtracker entry and who thus has
-permission to modify it. Ideally we would like this to be the
-person who coordinates the running of the actual bug tracker
-upstream.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>contactdetails</td>
-<td>text</td>
-<td><br />
-<br />
-The contact details of the people responsible for that bug tracker.
-This allows us to coordinate the syncing of bugs to and from that
-bug tracker with the responsible people on the other side.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>version</td>
-<td>text</td>
-<td><br />
-<br />
-The version of the bug tracker software being used.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>block_comment_pushing</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether to block pushing comments to the bug tracker. Having a
-value of false means that we will push the comments if the bug
-tracker supports it.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>has_lp_plugin</td>
-<td>boolean</td>
-<td><br />
-<br />
-Whether we have confirmed that the Launchpad plugin was installed
-on the bug tracker, the last time checkwatches was run.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtracker Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.bugtrackeralias">public.bugtrackeralias</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugtrackerperson">public.bugtrackerperson</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugwatch">public.bugwatch</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.product">public.product</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.project">public.project</a></li>
-</ul>
-<!-- Indexes -->
-bugtracker_owner_idx owner <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugtrackeralias" id=
-"public.table.bugtrackeralias">bugtrackeralias</a></h2>
-<p>A bugtracker alias is a URL that also refers to the same
-bugtracker as the master bugtracker. For example, a bugtracker
-might be accessible as both http://www.bugsrus.com/ and
-http://bugsrus.com/. A bugtracker can have many aliases, and all of
-them are checked to prevents users registering duplicate
-bugtrackers inadvertently.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtrackeralias Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.bugtracker">public.bugtracker.id</a></td>
-<td>bugtracker</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The master bugtracker that this alias refers to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>base_url</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-Another base URL for this bug tracker. See BugTracker.baseurl.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugtrackeralias__bugtracker__idx bugtracker 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugtrackerperson" id=
-"public.table.bugtrackerperson">bugtrackerperson</a></h2>
-<p>A mapping from a user in an external bug tracker to a Person
-record in Launchpad. This is used when we can't get an e-mail
-address from the bug tracker.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugtrackerperson Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When was this mapping added.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.bugtracker">public.bugtracker.id</a></td>
-<td>bugtracker</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The external bug tracker in which this user has an account.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The Person record in Launchpad this user corresponds to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The (within the bug tracker) unique username in the external bug
-tracker.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-bugtrackerperson__person__idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.bugwatch" id=
-"public.table.bugwatch">bugwatch</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.bugwatch Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#1 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.bugtracker">public.bugtracker.id</a></td>
-<td>bugtracker</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>remotebug</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>remotestatus</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lastchanged</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, ('now'::text)::timestamp(6)
-with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lastchecked</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, ('now'::text)::timestamp(6)
-with time zone)</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_error_type</td>
-<td>integer</td>
-<td><br />
-<br />
-The type of error which last prevented this entry from being
-updated. Legal values are defined by the BugWatchErrorType
-enumeration.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>remote_importance</td>
-<td>text</td>
-<td><br />
-<br />
-The importance of the bug as returned by the remote server. This
-will be converted into a Launchpad BugTaskImportance value.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>remote_lp_bug_id</td>
-<td>integer</td>
-<td><br />
-<br />
-The bug in Launchpad that the remote bug is pointing at. This can
-be different than the BugWatch.bug column, since the same remote
-bug can be linked from multiple bugs in Launchpad, but the remote
-bug can only link to a single bug in Launchpad. The main use case
-for this column is to avoid having to query the remote bug tracker
-for this information, in order to decide whether we need to give
-this information to the remote bug tracker.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.bugmessage">public.bugmessage</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<!-- Indexes -->
-bugwatch_bug_idx bug bugwatch_bugtracker_idx bugtracker
-bugwatch_datecreated_idx datecreated bugwatch_owner_idx owner 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.build" id="public.table.build">build</a></h2>
-<p>Build: This table stores the build procedure information of a
-sourcepackagerelease and its results (binarypackagereleases) for a
-given distroarchseries.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.build Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>UNIQUE NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-When the build record was created.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.processor">public.processor.id</a></td>
-<td>processor</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Points to the Distroarchrelease available processor target for this
-build.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Points the target Distroarchrelease for this build.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>buildstate</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Stores the current build procedure state.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datebuilt</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the build record was processed.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>buildduration</td>
-<td>interval</td>
-<td><br />
-<br />
-How long this build took to be processed.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>buildlog</td>
-<td>integer</td>
-<td><br />
-<br />
-Points to the buildlog file stored in librarian.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.builder">public.builder.id</a></td>
-<td>builder</td>
-<td>integer</td>
-<td><br />
-<br />
-Points to the builder which has once processed it.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease.id</a></td>
-<td>sourcepackagerelease</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Sourcepackagerelease which originated this build.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Stores the target pocket identifier for this build.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dependencies</td>
-<td>text</td>
-<td><br />
-<br />
-Contains a debian-like dependency line specifying the current
-missing-dependencies for this package.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Targeted archive for this build.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>estimated_build_duration</td>
-<td>interval</td>
-<td><br />
-<br />
-How long does the previous attempt to build this source took in
-this architecture.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>build_warnings</td>
-<td>text</td>
-<td><br />
-<br />
-Warnings and diagnosis messages provided by the builder while
-building this job.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_first_dispatched</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The instant the build was dispatched the first time. This value
-will not get overridden if the build is retried.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>upload_log</td>
-<td>integer</td>
-<td><br />
-<br />
-Reference to a LibraryFileAlias containing the upload log messages
-generated while processing the binaries resulted from this
-build.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.binarypackagerelease">public.binarypackagerelease</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.buildqueue">public.buildqueue</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageuploadbuild">public.packageuploadbuild</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">public.securebinarypackagepublishinghistory</a></li>
-</ul>
-<!-- Indexes -->
-build__archive__idx archive
-build__distroarchseries__buildstate__idx distroarchseries,
-buildstate build__distroarchseries__datebuilt__idx
-distroarchseries, datebuilt build__upload_log__idx upload_log)
-WHERE (upload_log IS NOT NULL build_builder_and_buildstate_idx
-builder, buildstate build_buildlog_idx buildlog) WHERE (buildlog IS
-NOT NULL build_buildstate_idx buildstate build_datebuilt_idx
-datebuilt build_datecreated_idx datecreated
-build_sourcepackagerelease_idx sourcepackagerelease 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.builder" id="public.table.builder">builder</a></h2>
-<p>Builder: This table stores the build-slave registry and status
-information as: name, url, trusted, builderok, builderaction,
-failnotes.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.builder Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.processor">public.processor.id</a></td>
-<td>processor</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>speedindex</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>builderok</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-Should a builder fail for any reason, from out-of-disk-space to not
-responding to the buildd master, the builderok flag is set to false
-and the failnotes column is filled with a reason.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>failnotes</td>
-<td>text</td>
-<td><br />
-<br />
-This column gets filled out with a textual description of how/why a
-builder has failed. If the builderok column is true then the value
-in this column is irrelevant and should be treated as NULL or
-empty.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>virtualized</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether or not the builder is a virtual Xen builder. Packages
-coming via ubuntu workflow are trusted to build on non-Xen and do
-not need facist behaviour to be built. Other packages like
-ppa/grumpy incoming packages can contain malicious code, so are
-unstrusted and build in a Xen virtual machine.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>url</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The url to the build slave. There may be more than one build slave
-on a given host so this url includes the port number to use. The
-default port number for a build slave is 8221</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>manual</td>
-<td>boolean</td>
-<td><i>DEFAULT false</i><br />
-<br />
-Whether or not builder was manual mode, i.e., collect any result
-from the it, but do not dispach anything to it automatically.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>vm_host</td>
-<td>text</td>
-<td><br />
-<br />
-The virtual machine host associated to this builder. It should be
-empty for "native" builders (old fashion or architectures not yet
-supported by XEN).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether to present or not the builder in the public list of
-builders avaialble. It is used to hide transient or defunct
-builders while they get fixed.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.builder Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_absolute_url</td>
-<td>CHECK (valid_absolute_url(url))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.build">public.build</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.buildqueue">public.buildqueue</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.buildqueue" id=
-"public.table.buildqueue">buildqueue</a></h2>
-<p>BuildQueue: The queue of builds in progress/scheduled to run.
-This table is the core of the build daemon master. It lists all
-builds in progress or scheduled to start.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.buildqueue Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.build">public.build.id</a></td>
-<td>build</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The build for which this queue item exists. This is how the buildd
-master will find all the files it needs to perform the build</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.builder">public.builder.id</a></td>
-<td>builder</td>
-<td>integer</td>
-<td><br />
-<br />
-The builder assigned to this build. Some builds will have a builder
-assigned to queue them up; some will be building on the specified
-builder already; others will not have a builder yet (NULL) and will
-be waiting to be assigned into a builder's queue</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>logtail</td>
-<td>text</td>
-<td><br />
-<br />
-The tail end of the log of the current build. This is updated
-regularly as the buildd master polls the buildd slaves. Once the
-build is complete; the full log will be lodged with the librarian
-and linked into the build table.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-The timestamp of the creation of this row. This is used by the
-buildd master scheduling algorithm to decide how soon to schedule a
-build to run on a given builder.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>buildstart</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The timestamp of the start of the build run on the given builder.
-If this is NULL then the build is not running yet.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lastscore</td>
-<td>integer</td>
-<td><br />
-<br />
-The last score ascribed to this build record. This can be used in
-the UI among other places.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>manual</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Indicates if the current record was or not rescored manually, if so
-it get skipped from the auto-score procedure.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-buildqueue__build__idx build <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codeimport" id=
-"public.table.codeimport">codeimport</a></h2>
-<p>The persistent record of an import from a foreign version
-control system to Bazaar, from the initial request to the regularly
-updated import branch.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimport Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.branch">public.branch.id</a></td>
-<td>branch</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The Bazaar branch produced by the import system. Always non-NULL: a
-placeholder branch is created when the import is created. The
-import is associated to a Product and Series though the
-branch.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who originally requested this import.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>rcs_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The revision control system used by the import source. The value is
-defined in dbschema.RevisionControlSystems.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>svn_branch_url</td>
-<td>text</td>
-<td><br />
-<br />
-The URL of the Subversion branch for this import.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>cvs_root</td>
-<td>text</td>
-<td><br />
-<br />
-The $CVSROOT details, probably of the form
-:pserver:user@host:/path.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>cvs_module</td>
-<td>text</td>
-<td><br />
-<br />
-The module in cvs_root to import, often the name of the
-project.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>review_status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-Whether this code import request has been reviewed, and whether it
-was accepted.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_successful</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When this code import last succeeded. NULL if this import has never
-succeeded.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who is currently responsible for keeping the import
-details up to date, initially set to the registrant. This person
-can edit some of the details of the code import branch.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>assignee</td>
-<td>integer</td>
-<td><br />
-<br />
-The person in charge of delivering this code import and interacting
-with the owner.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>update_interval</td>
-<td>interval</td>
-<td><br />
-<br />
-How often should this import be updated. If NULL, defaults to a
-system-wide value set by the Launchpad administrators.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>git_repo_url</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimport Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_vcs_details</td>
-<td>CHECK (CASE WHEN (rcs_type = 1) THEN ((((((cvs_root IS NOT
-NULL) AND (cvs_root &lt;&gt; ''::text)) AND (cvs_module IS NOT
-NULL)) AND (cvs_module &lt;&gt; ''::text)) AND (svn_branch_url IS
-NULL)) AND (git_repo_url IS NULL)) WHEN ((rcs_type = 2) OR
-(rcs_type = 3)) THEN (((((cvs_root IS NULL) AND (cvs_module IS
-NULL)) AND (svn_branch_url IS NOT NULL)) AND
-valid_absolute_url(svn_branch_url)) AND (git_repo_url IS NULL))
-WHEN (rcs_type = 4) THEN ((((cvs_root IS NULL) AND (cvs_module IS
-NULL)) AND (svn_branch_url IS NULL)) AND (git_repo_url IS NOT
-NULL)) ELSE false END)</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.codeimportevent">public.codeimportevent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportjob">public.codeimportjob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportresult">public.codeimportresult</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productseriescodeimport">public.productseriescodeimport</a></li>
-</ul>
-<!-- Indexes -->
-codeimport__assignee__idx assignee codeimport__owner__idx owner
-codeimport__registrant__idx registrant <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codeimportevent" id=
-"public.table.codeimportevent">codeimportevent</a></h2>
-<p>A record of events in the code import system. Rows in this table
-are created by triggers on other code import tables.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimportevent Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>entry_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of event that is recorded by this entry. Legal values are
-defined by the CodeImportEventType enumeration.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.codeimport">public.codeimport.id</a></td>
-<td>code_import</td>
-<td>integer</td>
-<td><br />
-<br />
-The code import that was associated to this event, if any and if it
-has not been deleted.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><br />
-<br />
-The user who caused the event, if the event is not automatically
-generated.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.codeimportmachine">public.codeimportmachine.id</a></td>
-<td>machine</td>
-<td>integer</td>
-<td><br />
-<br />
-The code import machine that was concerned by this event, if
-any.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.codeimporteventdata">public.codeimporteventdata</a></li>
-</ul>
-<!-- Indexes -->
-codeimportevent__code_import__date_created__id__idx code_import,
-date_created, id codeimportevent__date_created__id__idx
-date_created, id codeimportevent__message__date_created__idx
-machine, date_created) WHERE (machine IS NOT NULL
-codeimportevent__person__idx person) WHERE (person IS NOT NULL 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codeimporteventdata" id=
-"public.table.codeimporteventdata">codeimporteventdata</a></h2>
-<p>Additional data associated to a particular code import
-event.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimporteventdata Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.codeimportevent">public.codeimportevent.id</a></td>
-<td>event</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The event the data is associated to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>data_type</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The type of additional data, from the CodeImportEventDataType
-enumeration.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>data_value</td>
-<td>text</td>
-<td><br />
-<br />
-The value of the additional data. A string.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codeimportjob" id=
-"public.table.codeimportjob">codeimportjob</a></h2>
-<p>A pending or active code import job. There is always such a row
-for any active import, but it will not run until date_due is in the
-past.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimportjob Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.codeimport">public.codeimport.id</a></td>
-<td>code_import</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The code import that is being worked upon.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.codeimportmachine">public.codeimportmachine.id</a></td>
-<td>machine</td>
-<td>integer</td>
-<td><br />
-<br />
-The machine job is currently scheduled to run on, or where the job
-is currently running.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_due</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-When the import should happen.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>state</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-One of PENDING (waiting until its due or a machine is online),
-SCHEDULED (assigned to a machine, but not yet running) or RUNNING
-(actually in the process of being imported now).</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>requesting_user</td>
-<td>integer</td>
-<td><br />
-<br />
-The user who requested the import, if any. Set if and only if
-reason = REQUEST.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>ordering</td>
-<td>integer</td>
-<td><br />
-<br />
-A measure of how urgent the job is -- queue entries with lower
-"ordering" should be processed first, or in other works "ORDER BY
-ordering" returns the most import jobs first.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>heartbeat</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-While the job is running, this field should be updated frequently
-to indicate that the import job hasn't crashed.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>logtail</td>
-<td>text</td>
-<td><br />
-<br />
-The last few lines of output produced by the running job. It should
-be updated at the same time as the heartbeat.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_started</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the import began to be processed.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimportjob Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_state</td>
-<td>CHECK (CASE WHEN (state = 10) THEN (((((machine IS NULL) AND
-(ordering IS NULL)) AND (heartbeat IS NULL)) AND (date_started IS
-NULL)) AND (logtail IS NULL)) WHEN (state = 20) THEN (((((machine
-IS NOT NULL) AND (ordering IS NOT NULL)) AND (heartbeat IS NULL))
-AND (date_started IS NULL)) AND (logtail IS NULL)) WHEN (state =
-30) THEN (((((machine IS NOT NULL) AND (ordering IS NULL)) AND
-(heartbeat IS NOT NULL)) AND (date_started IS NOT NULL)) AND
-(logtail IS NOT NULL)) ELSE false END)</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-codeimportjob__code_import__date_created__idx code_import,
-date_created codeimportjob__machine__date_created__idx machine,
-date_created codeimportjob__requesting_user__idx requesting_user 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codeimportmachine" id=
-"public.table.codeimportmachine">codeimportmachine</a></h2>
-<p>The record of a machine capable of performing jobs for the code
-import system.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimportmachine Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>hostname</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The (unique) hostname of the machine.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>state</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 10</i><br />
-<br />
-Whether the controller daemon on this machine is offline, online,
-or quiescing (running but not accepting new jobs).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>heartbeat</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the code-import-controller daemon was last known to be running
-on this machine. If it is not updated for a long time the machine
-state will change to offline.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.codeimportevent">public.codeimportevent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportjob">public.codeimportjob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportresult">public.codeimportresult</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codeimportresult" id=
-"public.table.codeimportresult">codeimportresult</a></h2>
-<p>A completed code import job.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codeimportresult Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.codeimport">public.codeimport.id</a></td>
-<td>code_import</td>
-<td>integer</td>
-<td><br />
-<br />
-The code import for which the job was run.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.codeimportmachine">public.codeimportmachine.id</a></td>
-<td>machine</td>
-<td>integer</td>
-<td><br />
-<br />
-The machine the job ran on.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>requesting_user</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>log_excerpt</td>
-<td>text</td>
-<td><br />
-<br />
-The last few lines of the partial log, in case it is set.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>log_file</td>
-<td>integer</td>
-<td><br />
-<br />
-A partial log of the job for users to see. It is normally only
-recorded if the job failed in a step that interacts with the remote
-repository. If a job was successful, or failed in a houskeeping
-step, the log file would not contain information useful to the
-user.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-How the job ended. Success, some kind of failure, or some kind of
-interruption before completion.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_job_started</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the job started to run (date_created is when it
-finished).</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-codeimportresult__code_import__date_created__idx code_import,
-date_created codeimportresult__machine__date_created__idx machine,
-date_created codeimportresult__requesting_user__idx requesting_user
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codereviewmessage" id=
-"public.table.codereviewmessage">codereviewmessage</a></h2>
-<p>A message that is part of a code review discussion.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codereviewmessage Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#1 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal.id</a></td>
-<td>branch_merge_proposal</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The merge proposal that is being discussed.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The actual message.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>vote</td>
-<td>integer</td>
-<td><br />
-<br />
-The reviewer's vote for this message.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>vote_tag</td>
-<td>text</td>
-<td><br />
-<br />
-A short description of the vote</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.codereviewvote">public.codereviewvote</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.codereviewvote" id=
-"public.table.codereviewvote">codereviewvote</a></h2>
-<p>Reference to a person's last vote in a code review
-discussion.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.codereviewvote Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal.id</a></td>
-<td>branch_merge_proposal</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The BranchMergeProposal for the code review.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>reviewer</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person performing the review.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>review_type</td>
-<td>text</td>
-<td><br />
-<br />
-The aspect of the code being reviewed.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who registered this vote</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.codereviewmessage">public.codereviewmessage.id</a></td>
-<td>vote_message</td>
-<td>integer</td>
-<td><br />
-<br />
-The message associated with the vote</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date this vote reference was created</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-codereviewvote__branch_merge_proposal__idx branch_merge_proposal
-codereviewvote__registrant__idx registrant
-codereviewvote__reviewer__idx reviewer
-codereviewvote__vote_message__idx vote_message 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.commercialsubscription" id=
-"public.table.commercialsubscription">commercialsubscription</a></h2>
-<p>A Commercial Subscription entry for a project. Projects with
-licenses of Other/Proprietary must purchase a subscription in order
-to use Launchpad.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.commercialsubscription Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date this subscription was created in Launchpad.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_last_modified</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date this subscription was last modified.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_starts</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-The beginning date for this subscription. It is invalid until that
-date.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_expires</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-The expiration date for this subscription. It is invalid after that
-date.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 10</i><br />
-<br />
-The current status. One of: SUBSCRIBED, LAPSED, SUSPENDED.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The product this subscription enables.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who created this subscription.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>purchaser</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who purchased this subscription.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-A place for administrators to store comments related to this
-subscription.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sales_system_id</td>
-<td>text</td>
-<td><br />
-<br />
-A reference in the external sales system (e.g. Salesforce) that can
-be used to identify this subscription.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-commercialsubscription__product__idx product
-commercialsubscription__purchaser__idx purchaser
-commercialsubscription__registrant__idx registrant
-commercialsubscription__sales_system_id__idx sales_system_id 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.component" id=
-"public.table.component">component</a></h2>
-<p>Known components in Launchpad</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.component Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-Component name text</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><br />
-<br />
-Description of this component.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.component Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.archivedependency">public.archivedependency</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archivepermission">public.archivepermission</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.binarypackagerelease">public.binarypackagerelease</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.componentselection">public.componentselection</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distrocomponentuploader">public.distrocomponentuploader</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorcontent">public.mirrorcontent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrordistroarchseries">public.mirrordistroarchseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrordistroseriessource">public.mirrordistroseriessource</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorsourcecontent">public.mirrorsourcecontent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagecopyrequest">public.packagecopyrequest</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageselection">public.packageselection</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">public.securebinarypackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securesourcepackagepublishinghistory">public.securesourcepackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.componentselection" id=
-"public.table.componentselection">componentselection</a></h2>
-<p>Allowed components in a given distroseries.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.componentselection Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Refers to the distroseries in question.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Refers to the component in qestion.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.continent" id=
-"public.table.continent">continent</a></h2>
-<p>A continent in this huge world.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.continent Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>code</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-A two-letter code for a continent.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The name of the continent.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.country">public.country</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.country" id="public.table.country">country</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.country Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>iso3166code2</td>
-<td>character(2)</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>iso3166code3</td>
-<td>character(3)</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.continent">public.continent.id</a></td>
-<td>continent</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.distributionmirror">public.distributionmirror</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.libraryfiledownloadcount">public.libraryfiledownloadcount</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.mirror">public.mirror</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.person">public.person</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.shippingrequest">public.shippingrequest</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.spokenin">public.spokenin</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.customlanguagecode" id=
-"public.table.customlanguagecode">customlanguagecode</a></h2>
-<p>Overrides translation importer's interpretation of language
-codes where needed.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.customlanguagecode Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-Product for which this custom language code applies (alternative to
-distribution + source package name).</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-Distribution in which this custom language code applies (if not a
-product).</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-Source package name to which this custom language code applies;
-goes with distribution.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>language_code</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-Custom language code; need not be for a real language, and
-typically not for a "useful" language.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td><br />
-<br />
-Language to which code really refers in this context, or NULL if
-files with this code are to be rejected.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.customlanguagecode Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>distro_and_sourcepackage</td>
-<td>CHECK (((sourcepackagename IS NULL) = (distribution IS
-NULL)))</td>
-</tr>
-<tr class="tr1">
-<td>product_or_distro</td>
-<td>CHECK (((product IS NULL) &lt;&gt; (distribution IS
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.cve" id="public.table.cve">cve</a></h2>
-<p>A CVE Entry. The formal database of CVE entries is available at
-http://cve.mitre.org/ and we sync that database into Launchpad on a
-regular basis.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.cve Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sequence</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The official CVE entry number. It takes the form XXXX-XXXX where
-the first four digits are a year indicator, like 2004, and the
-latter four are the sequence number of the vulnerability in that
-year.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The current status of the CVE. The values are documented in
-dbschema.CVEState, and are Entry, Candidate, and Deprecated.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datemodified</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The last time this CVE entry changed in some way - including
-addition or modification of references.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.cve Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_cve_ref</td>
-<td>CHECK (valid_cve(sequence))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.bugcve">public.bugcve</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.cvereference">public.cvereference</a></li>
-</ul>
-<!-- Indexes -->
-cve_datecreated_idx datecreated cve_datemodified_idx datemodified
-cve_fti fti <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.cvereference" id=
-"public.table.cvereference">cvereference</a></h2>
-<p>A reference in the CVE system that shows what outside tracking
-numbers are associated with the CVE. These are tracked in the CVE
-database and extracted from the daily XML dump that we fetch.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.cvereference Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.cve">public.cve.id</a></td>
-<td>cve</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>source</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The SOURCE of the CVE reference. This is a text string, like XF or
-BUGTRAQ or MSKB. Each string indicates a different kind of
-reference. The list of known types is documented on the CVE web
-site. At some future date we might turn this into an enum rather
-than a text, but for the moment we prefer to keep it fluid and just
-suck in what CVE gives us. This means that CVE can add new source
-types without us having to update our code.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>content</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The content of the ref in the CVE database. This is sometimes a
-comment, sometimes a description, sometimes a bug number... it is
-not predictable.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>url</td>
-<td>text</td>
-<td><br />
-<br />
-The URL to this reference out there on the web, if it was present
-in the CVE database.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-cvereference_cve_idx cve <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.diff" id="public.table.diff">diff</a></h2>
-<p>Information common to static or preview diffs</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.diff Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>diff_text</td>
-<td>integer</td>
-<td><br />
-<br />
-The library copy of the fulltext of the diff</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>diff_lines_count</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of lines in the diff</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>diffstat</td>
-<td>text</td>
-<td><br />
-<br />
-Statistics about the diff</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>added_lines_count</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of lines added in the diff.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>removed_lines_count</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of lines removed in the diff</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.previewdiff">public.previewdiff</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.staticdiff">public.staticdiff</a></li>
-</ul>
-<!-- Indexes -->
-diff__diff_text__idx diff_text <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distribution" id=
-"public.table.distribution">distribution</a></h2>
-<p>Distribution: A soyuz distribution. A distribution is a
-collection of DistroSeries. Distributions often group together
-policy and may be referred to by a name such as "Ubuntu" or
-"Debian"</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distribution Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The unique name of the distribution as a short lowercase name
-suitable for use in a URL.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The title of the distribution. More a "display name" as it were.
-E.g. "Ubuntu" or "Debian GNU/Linux"</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A description of the distribution. More detailed than the title,
-this column may also contain information about the project this
-distribution is run by.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>domainname</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The domain name of the distribution. This may be used both for
-linking to the distribution and for context-related stuff.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person in launchpad who is in ultimate-charge of this
-distribution within launchpad.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lucilleconfig</td>
-<td>text</td>
-<td><br />
-<br />
-Configuration information which lucille will use when processing
-uploads and generating archives for this distribution</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>members</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Person or team with upload and commit priviledges relating to this
-distribution. Other rights may be assigned to this role in the
-future.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.translationgroup">public.translationgroup.id</a></td>
-<td>translationgroup</td>
-<td>integer</td>
-<td><br />
-<br />
-The translation group that is responsible for all translation work
-in this distribution.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>translationpermission</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The level of openness of this distribution's translation process.
-The enum lists different approaches to translation, from the very
-open (anybody can edit any translation in any language) to the
-completely closed (only designated translators can make any changes
-at all).</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>bug_supervisor</td>
-<td>integer</td>
-<td><br />
-<br />
-Person who is responsible for managing bugs on this
-distribution.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>official_malone</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether or not this distribution uses Malone for an official bug
-tracker.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>official_rosetta</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether or not this distribution uses Rosetta for its official
-translation team and coordination.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>security_contact</td>
-<td>integer</td>
-<td><br />
-<br />
-The person or team who handles security-related issues in the
-distribution.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>driver</td>
-<td>integer</td>
-<td><br />
-<br />
-The team or person responsible for approving goals for each release
-in the distribution. This should usually be a very small team
-because the Distribution driver can approve items for backporting
-to past releases as well as the current release under development.
-Each distroseries has its own driver too, so you can have the small
-superset in the Distribution driver, and then specific teams per
-distroseries for backporting, for example, or for the current
-release management team on the current development focus
-release.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>translation_focus</td>
-<td>integer</td>
-<td><br />
-<br />
-The DistroSeries that should get the translation effort focus.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>mirror_admin</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Person or team with privileges to mark a mirror as official.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>upload_admin</td>
-<td>integer</td>
-<td><br />
-<br />
-Person foreign key which have access to modify the queue ui. If
-NULL, we fall back to launchpad admin members</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>upload_sender</td>
-<td>text</td>
-<td><br />
-<br />
-The email address (and name) of the default sender used by the
-upload processor. If NULL, we fall back to the default sender in
-the launchpad config.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>homepage_content</td>
-<td>text</td>
-<td><br />
-<br />
-A home page for this distribution in the Launchpad.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>icon</td>
-<td>integer</td>
-<td><br />
-<br />
-The library file alias to a small image to be used as an icon
-whenever we are referring to a distribution.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>mugshot</td>
-<td>integer</td>
-<td><br />
-<br />
-The library file alias of a mugshot image to display as the
-branding of a distribution, on its home page.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>logo</td>
-<td>integer</td>
-<td><br />
-<br />
-The library file alias of a smaller version of this distributions's
-mugshot.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>official_answers</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether or not this product upstream uses Answers officialy.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>language_pack_admin</td>
-<td>integer</td>
-<td><br />
-<br />
-The Person or Team that handle language packs for the distro
-release.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>official_blueprints</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>enable_bug_expiration</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Indicates whether automatic bug expiration is enabled.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>bug_reporting_guidelines</td>
-<td>text</td>
-<td><br />
-<br />
-Guidelines to the end user for reporting bugs on this
-distribution.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reviewer_whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-A whiteboard for Launchpad admins, registry experts and the project
-owners to capture the state of current issues with the
-project.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distribution Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>only_launchpad_has_expiration</td>
-<td>CHECK (((enable_bug_expiration IS FALSE) OR (official_malone IS
-TRUE)))</td>
-</tr>
-<tr class="tr1">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.announcement">public.announcement</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.answercontact">public.answercontact</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.archive">public.archive</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.customlanguagecode">public.customlanguagecode</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionbounty">public.distributionbounty</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionmirror">public.distributionmirror</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionsourcepackage">public.distributionsourcepackage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionsourcepackagecache">public.distributionsourcepackagecache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distrocomponentuploader">public.distrocomponentuploader</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseries">public.distroseries</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.entitlement">public.entitlement</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.faq">public.faq</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.karma">public.karma</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.karmacache">public.karmacache</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.message">public.message</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.milestone">public.milestone</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.oauthaccesstoken">public.oauthaccesstoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.oauthrequesttoken">public.oauthrequesttoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.officialbugtag">public.officialbugtag</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pillarname">public.pillarname</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.question">public.question</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specification">public.specification</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.structuralsubscription">public.structuralsubscription</a></li>
-</ul>
-<!-- Indexes -->
-distribution__bug_supervisor__idx bug_supervisor) WHERE
-(bug_supervisor IS NOT NULL distribution__icon__idx icon) WHERE
-(icon IS NOT NULL distribution__language_pack_admin__idx
-language_pack_admin distribution__logo__idx logo) WHERE (logo IS
-NOT NULL distribution__mugshot__idx mugshot) WHERE (mugshot IS NOT
-NULL distribution_fti fti distribution_translationgroup_idx
-translationgroup <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distributionbounty" id=
-"public.table.distributionbounty">distributionbounty</a></h2>
-<p>This table records a simple link between a bounty and a
-distribution. This bounty will be listed on the distribution web
-page, and the distribution will be mentioned on the bounty web
-page.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distributionbounty Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.bounty">public.bounty.id</a></td>
-<td>bounty</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-distributionbounty_distribution_idx distribution 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distributionmirror" id=
-"public.table.distributionmirror">distributionmirror</a></h2>
-<p>A mirror of a given distribution.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distributionmirror Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The distribution to which the mirror refers to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The unique name of the mirror.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>http_base_url</td>
-<td>text</td>
-<td><i>UNIQUE</i><br />
-<br />
-The HTTP URL used to access the mirror.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>ftp_base_url</td>
-<td>text</td>
-<td><i>UNIQUE</i><br />
-<br />
-The FTP URL used to access the mirror.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>rsync_base_url</td>
-<td>text</td>
-<td><i>UNIQUE</i><br />
-<br />
-The Rsync URL used to access the mirror.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><br />
-<br />
-The displayname of the mirror.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><br />
-<br />
-A description of the mirror.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The owner of the mirror.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>speed</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The speed of the mirror's Internet link.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.country">public.country.id</a></td>
-<td>country</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The country where the mirror is located.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>content</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The content that is mirrored.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>official_candidate</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Is the mirror a candidate for becoming an official mirror?</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>enabled</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Is this mirror enabled?</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date and time the mirror was created.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-Notes on the current status of the mirror</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 10</i><br />
-<br />
-This mirror's status.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_reviewed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date and time the mirror was reviewed.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>reviewer</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who reviewed the mirror.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distributionmirror Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>one_or_more_urls</td>
-<td>CHECK ((((http_base_url IS NOT NULL) OR (ftp_base_url IS NOT
-NULL)) OR (rsync_base_url IS NOT NULL)))</td>
-</tr>
-<tr class="tr1">
-<td>valid_ftp_base_url</td>
-<td>CHECK (valid_absolute_url(ftp_base_url))</td>
-</tr>
-<tr class="tr0">
-<td>valid_http_base_url</td>
-<td>CHECK (valid_absolute_url(http_base_url))</td>
-</tr>
-<tr class="tr1">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-<tr class="tr0">
-<td>valid_rsync_base_url</td>
-<td>CHECK (valid_absolute_url(rsync_base_url))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.mirrorcdimagedistroseries">public.mirrorcdimagedistroseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrordistroarchseries">public.mirrordistroarchseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrordistroseriessource">public.mirrordistroseriessource</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorproberecord">public.mirrorproberecord</a></li>
-</ul>
-<!-- Indexes -->
-distributionmirror__country__status__idx country, status
-distributionmirror__status__idx status <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distributionsourcepackage" id=
-"public.table.distributionsourcepackage">distributionsourcepackage</a></h2>
-<p>Representing a sourcepackage in a distribution across all
-distribution series.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distributionsourcepackage Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>bug_reporting_guidelines</td>
-<td>text</td>
-<td><br />
-<br />
-Guidelines to the end user for reporting bugs on a particular a
-source package in a distribution.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distributionsourcepackagecache" id=
-"public.table.distributionsourcepackagecache">distributionsourcepackagecache</a></h2>
-<p>A cache of the text associated with binary and source packages
-in the distribution. This table allows for fast queries to find a
-source packagename that matches a given text.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distributionsourcepackagecache Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The distribution in which we are checking.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The source package name for which we are caching details.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><br />
-<br />
-The source package name itself. This is just a copy of the value of
-sourcepackagename.name. We have it here so it can be part of the
-full text index.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>binpkgnames</td>
-<td>text</td>
-<td><br />
-<br />
-The binary package names of binary packages generated from these
-source packages across all architectures.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>binpkgsummaries</td>
-<td>text</td>
-<td><br />
-<br />
-The aggregated summaries of all the binary packages generated from
-these source packages in this distribution.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>binpkgdescriptions</td>
-<td>text</td>
-<td><br />
-<br />
-The aggregated description of all the binary packages generated
-from these source packages in this distribution.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>changelog</td>
-<td>text</td>
-<td><br />
-<br />
-A concatenation of the source package release changelogs for this
-source package, where the status is not REMOVED.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The archive where the source is published.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-distributionsourcepackagecache__archive__idx archive
-distributionsourcepackagecache_fti fti <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distroarchseries" id=
-"public.table.distroarchseries">distroarchseries</a></h2>
-<p>DistroArchSeries: A soyuz distribution release for a given
-architecture. A distroseries runs on various architectures. The
-distroarchseries groups that architecture-specific stuff.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distroarchseries Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-The distribution which this distroarchseries is part of.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.processorfamily">public.processorfamily.id</a></td>
-<td>processorfamily</td>
-<td>integer</td>
-<td><i>UNIQUE#2 NOT NULL</i><br />
-<br />
-A link to the ProcessorFamily table, giving the architecture of
-this DistroArchSeries.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>architecturetag</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The name of this architecture in the context of this specific
-distro release. For example, some distributions might label amd64
-as amd64, others might call is x86_64. This information is used,
-for example, in determining the names of the actual package
-files... such as the "amd64" part of
-"apache2_2.0.56-1_amd64.deb"</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>official</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-Whether or not this architecture or "port" is an official release.
-If it is not official then you may not be able to install it or get
-all the packages for it.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>package_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A cache of the number of binary packages published in this distro
-arch release. The count only includes packages published in the
-release pocket.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>supports_virtualized</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether or not virtualized build support should be provided by this
-specific distroarchseries</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.build">public.build</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseries">public.distroseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwsubmission">public.hwsubmission</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswercount">public.hwtestanswercount</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorcontent">public.mirrorcontent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrordistroarchseries">public.mirrordistroarchseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.pocketchroot">public.pocketchroot</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">public.securebinarypackagepublishinghistory</a></li>
-</ul>
-<!-- Indexes -->
-distroarchseries__distroseries__idx distroseries
-distroarchseries__owner__idx owner <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distrocomponentuploader" id=
-"public.table.distrocomponentuploader">distrocomponentuploader</a></h2>
-<p>DistroComponentUploader: A record of who can upload what to
-where. Distributions are permitted to have multiple components.
-Those components are often subject to different uploader
-constraints. This table represents those variable constraints by
-linking a team to a distribution,component tuple.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distrocomponentuploader Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The distribution to which this upload permission applies.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The component to which this upload permission applies.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>uploader</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The uploader(s) permitted to upload to the given component in the
-given distribution. This is commonly a team but may be a single
-person in the case of a simple distribution.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-distrocomponentuploader_uploader_idx uploader 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distroseries" id=
-"public.table.distroseries">distroseries</a></h2>
-<p>DistroSeries: A soyuz distribution release. A DistroSeries is a
-given version of a distribution. E.g. "Warty" "Hoary" "Sarge"
-etc.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distroseries Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#2 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-The distribution which contains this distroseries.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The unique name of the distroseries. This is a short name in lower
-case and would be used in sources.list configuration and in
-generated URLs. E.g. "warty" "sarge" "sid"</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The display-name title of the distroseries E.g. "Warty
-Warthog"</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The long detailed description of the release. This may describe the
-focus of the release or other related information.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>version</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The version of the release. E.g. warty would be "4.10" and hoary
-would be "5.4"</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>releasestatus</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The current release status of this distroseries. E.g. "pre-release
-freeze" or "released"</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datereleased</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date on which this distroseries was released. (obviously only
-valid for released distributions)</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.distroseries">public.distroseries.id</a>
-<a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>parent_series</td>
-<td>integer</td>
-<td><br />
-<br />
-The parent distroseries on which this distribution is based. This
-is related to the inheritance stuff.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The ultimate owner of this distroseries.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lucilleconfig</td>
-<td>text</td>
-<td><br />
-<br />
-Configuration information which lucille will use when processing
-uploads and generating archives for this distro release</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A brief summary of the distro release. This will be displayed in
-bold at the top of the distroseries page, above the distroseries
-description. It should include any high points that are
-particularly important to draw to the attention of users.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datelastlangpack</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>messagecount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-This is a cached value and may be a few hours out of sync with
-reality. It should, however, be in sync with the values in
-DistroSeriesLanguage, and should never be updated separately. The
-total number of translation messages in this distro release, as per
-IRosettaStats.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>nominatedarchindep</td>
-<td>integer</td>
-<td><br />
-<br />
-This is the DistroArchSeries nominated to build architecture
-independent packages within this DistroRelase, it is mandatory for
-buildable distroseries, i.e., Auto Build System will avoid to
-create build jobs for a DistroSeries with no nominatedarchindep,
-but the database model allow us to do it (for non-buildable
-DistroSeries). See further info in NominatedArchIndep
-specification.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>changeslist</td>
-<td>text</td>
-<td><br />
-<br />
-The email address (name name) of the changes announcement list for
-this distroseries. If NULL, no announcement mail will be sent.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>binarycount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A cache of the number of distinct binary package names published in
-this distro release.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sourcecount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A cache of the number of distinct source package names published in
-this distro release.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>driver</td>
-<td>integer</td>
-<td><br />
-<br />
-This is a person or team who can act as a driver for this specific
-release - note that the distribution drivers can also set goals for
-any release.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>hide_all_translations</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether we should hid e all available translations for this distro
-release to non admin users.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>defer_translation_imports</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Don't accept PO imports for this release just now.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.languagepack">public.languagepack.id</a></td>
-<td>language_pack_base</td>
-<td>integer</td>
-<td><br />
-<br />
-Current full export language pack for this distribution
-release.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.languagepack">public.languagepack.id</a></td>
-<td>language_pack_delta</td>
-<td>integer</td>
-<td><br />
-<br />
-Current language pack update based on language_pack_base
-information.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.languagepack">public.languagepack.id</a></td>
-<td>language_pack_proposed</td>
-<td>integer</td>
-<td><br />
-<br />
-Either a full or update language pack being tested to be used in
-language_pack_base or language_pack_delta.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>language_pack_full_export_requested</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether next language pack export should be a full export or an
-update.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distroseries Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_language_pack_delta</td>
-<td>CHECK (((language_pack_base IS NOT NULL) OR
-(language_pack_delta IS NULL)))</td>
-</tr>
-<tr class="tr1">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-<tr class="tr0">
-<td>valid_version</td>
-<td>CHECK (sane_version(version))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.branch">public.branch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnomination">public.bugnomination</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.componentselection">public.componentselection</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distribution">public.distribution</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroarchseries">public.distroarchseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseries">public.distroseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroserieslanguage">public.distroserieslanguage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseriespackagecache">public.distroseriespackagecache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.languagepack">public.languagepack</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.milestone">public.milestone</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorcdimagedistroseries">public.mirrorcdimagedistroseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrordistroseriessource">public.mirrordistroseriessource</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorsourcecontent">public.mirrorsourcecontent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagecopyrequest">public.packagecopyrequest</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageselection">public.packageselection</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageupload">public.packageupload</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.packaging">public.packaging</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.potemplate">public.potemplate</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.revisioncache">public.revisioncache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sectionselection">public.sectionselection</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securesourcepackagepublishinghistory">public.securesourcepackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.seriessourcepackagebranch">public.seriessourcepackagebranch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specification">public.specification</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.structuralsubscription">public.structuralsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationimportqueueentry">public.translationimportqueueentry</a></li>
-</ul>
-<!-- Indexes -->
-distroseries__driver__idx driver) WHERE (driver IS NOT NULL
-distroseries__owner__idx owner <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distroserieslanguage" id=
-"public.table.distroserieslanguage">distroserieslanguage</a></h2>
-<p>A cache of the current translation status of that language
-across an entire distroseries.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distroserieslanguage Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.language">public.language.id</a>
-<a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>currentcount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-As per IRosettaStats.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>updatescount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-As per IRosettaStats.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>rosettacount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-As per IRosettaStats.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>contributorcount</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The total number of contributors to the translation of this
-distroseries into this language.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dateupdated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The date these statistucs were last updated.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>unreviewed_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-As per IRosettaStats.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.distroseriespackagecache" id=
-"public.table.distroseriespackagecache">distroseriespackagecache</a></h2>
-<p>A cache of the text associated with binary packages in the
-distroseries. This table allows for fast queries to find a binary
-packagename that matches a given text.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.distroseriespackagecache Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The distroseries in which we are checking.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.binarypackagename">public.binarypackagename.id</a></td>
-<td>binarypackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The binary package name for which we are caching details.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><br />
-<br />
-The binary package name itself. This is just a copy of the value of
-binarypackagename.name. We have it here so it can be part of the
-full text index.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><br />
-<br />
-A single summary for one of the binary packages of this name in
-this distroseries. We could potentially have binary packages in
-different architectures with the same name and different summaries,
-so this is a way of collapsing to one arbitrarily-chosen one, for
-display purposes. The chances of actually having different
-summaries and descriptions is pretty small. It could happen,
-though, because of the way package superseding works when a package
-does not build on a specific architecture.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>summaries</td>
-<td>text</td>
-<td><br />
-<br />
-The aggregated summaries of all the binary packages with this name
-in this distroseries.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>descriptions</td>
-<td>text</td>
-<td><br />
-<br />
-The aggregated description of all the binary packages with this
-name in this distroseries.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The archive where the binary is published.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-distroseriespackagecache__archive__idx archive
-distroseriespackagecache__distroseries__idx distroseries
-distroseriespackagecache_fti fti <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.emailaddress" id=
-"public.table.emailaddress">emailaddress</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.emailaddress Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>email</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-An email address used by a Person. The email address is stored in a
-casesensitive way, but must be case insensitivly unique.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>person</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.account">public.account.id</a></td>
-<td>account</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.emailaddress Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>emailaddress__is_linked__chk</td>
-<td>CHECK (((person IS NOT NULL) OR (account IS NOT NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-emailaddress__lower_email__key lower(email)
-emailaddress__person__status__idx person, status 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.entitlement" id=
-"public.table.entitlement">entitlement</a></h2>
-<p>Entitlements and usage of privileged features.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.entitlement Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><br />
-<br />
-The person to which the entitlements apply.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>entitlement_type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of this entitlement (e.g. private bug).</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>quota</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Number of this entitlement allowed.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>amount_used</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Quantity of this entitlement allocation that is used.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_starts</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When this entitlement becomes active.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_expires</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When this entitlement expires.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><br />
-<br />
-The person (admin) who registered this entitlement. It is NULL if
-imported directly from an external sales system.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Creation date of entitlement.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>approved_by</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who approved this entitlement. It is NULL if imported
-directly from an external sales system.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_approved</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-Approval date of entitlement. It is NULL if imported directly from
-an external sales system.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>state</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 30</i><br />
-<br />
-The state (REQUESTED, ACTIVE, INACTIVE) of the entitlement.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>whiteboard</td>
-<td>text</td>
-<td><br />
-<br />
-A place for administrator notes.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>is_dirty</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-This entitlement has been modified and the state needst to be
-updated on the external system.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The distribution to which this entitlement applies.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The product to which this entitlement applies.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td><br />
-<br />
-The project to which this entitlement applies.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.entitlement Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>only_one_target</td>
-<td>CHECK ((null_count(ARRAY[person, product, project,
-distribution]) = 3))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-entitlement__approved_by__idx approved_by) WHERE (approved_by IS
-NOT NULL entitlement__distribution__idx distribution) WHERE
-(distribution IS NOT NULL entitlement__person__idx person
-entitlement__product__idx product) WHERE (product IS NOT NULL
-entitlement__project__idx project) WHERE (project IS NOT NULL
-entitlement__registrant__idx registrant) WHERE (registrant IS NOT
-NULL entitlement_lookup_idx entitlement_type, date_starts,
-date_expires, person, state <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.exclusivelocks" id=
-"public.view.exclusivelocks">exclusivelocks</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.exclusivelocks Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>procpid</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>usename</td>
-<td>name</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>age</td>
-<td>interval</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>relname</td>
-<td>name</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>mode</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>granted</td>
-<td>boolean</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>current_query</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT alllocks.procpid
-, alllocks.usename
-, alllocks.age
-, alllocks.relname
-, alllocks.mode
-, alllocks.granted
-, alllocks.current_query 
-FROM alllocks 
-WHERE (alllocks.mode !~~ '%Share%'::text);
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.faq" id="public.table.faq">faq</a></h2>
-<p>A technical document containing the answer to a common
-question.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.faq Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i><br />
-<br />
-The FAQ document sequence number.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The document title.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>tags</td>
-<td>text</td>
-<td><br />
-<br />
-White-space separated list of tags.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>content</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The content of FAQ. It can also contain a short summary and a
-link.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The product to which this document is related. Either "product" or
-"distribution" must be set.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The distribution to which this document is related. Either
-"product" or "distribution" must be set.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who created the document.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The datetime when the document was created.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>last_updated_by</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who last modified the document.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_updated</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The datetime when the document was last modified.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.faq Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>product_or_distro</td>
-<td>CHECK (((product IS NULL) &lt;&gt; (distribution IS
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.question">public.question</a></li>
-</ul>
-<!-- Indexes -->
-faq__distribution__idx distribution) WHERE (distribution IS NOT
-NULL faq__product__idx product) WHERE (product IS NOT NULL faq_fti
-fti <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.featuredproject" id=
-"public.table.featuredproject">featuredproject</a></h2>
-<p>A list of featured projects. This table is really just a list of
-pillarname IDs, if a project's pillar name is in this list then it
-is a featured project and will be listed on the Launchpad home
-page.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.featuredproject Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.pillarname">public.pillarname.id</a></td>
-<td>pillar_name</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A reference to PillarName.id</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-featuredproject__pillar_name__idx pillar_name 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.flatpackagesetinclusion" id=
-"public.table.flatpackagesetinclusion">flatpackagesetinclusion</a></h2>
-<p>In order to facilitate the querying of set-subset relationships
-an expanded or flattened representation of the set-subset hierarchy
-is provided by this table.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.flatpackagesetinclusion Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageset">public.packageset.id</a></td>
-<td>parent</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The package set that is (directly or indirectly) including a
-subset.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.packageset">public.packageset.id</a></td>
-<td>child</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The package set that is being included as a subset.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-flatpackagesetinclusion__child__idx child <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.fticache" id=
-"public.table.fticache">fticache</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.fticache Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>tablename</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>columns</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.gpgkey" id="public.table.gpgkey">gpgkey</a></h2>
-<p>A GPG key belonging to a Person</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.gpgkey Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#1 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>keyid</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The 8 character GPG key id, uppercase and no whitespace</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fingerprint</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The 40 character GPG fingerprint, uppercase and no whitespace</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-True if this key is active for use in Launchpad context, false
-could be deactivated by user or revoked in the global key
-ring.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>algorithm</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The algorithm used to generate this key. Valid values defined in
-dbschema.GPGKeyAlgorithms</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>keysize</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Size of the key in bits, as reported by GPG. We may refuse to deal
-with keysizes &lt; 768 bits in the future.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>can_encrypt</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Whether the key has been validated for use in encryption (as
-opposed to just signing)</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.gpgkey Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_fingerprint</td>
-<td>CHECK (valid_fingerprint(fingerprint))</td>
-</tr>
-<tr class="tr1">
-<td>valid_keyid</td>
-<td>CHECK (valid_keyid(keyid))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.archive">public.archive</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageupload">public.packageupload</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.revision">public.revision</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.signedcodeofconduct">public.signedcodeofconduct</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdevice" id=
-"public.table.hwdevice">hwdevice</a></h2>
-<p>Basic information on devices.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdevice Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwvendorid">public.hwvendorid.id</a></td>
-<td>bus_vendor_id</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-A reference to a HWVendorID record.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>bus_product_id</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bus product ID of a device</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>variant</td>
-<td>text</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-An optional additional description for a device that shares its
-vendor and product ID with another, technically different,
-device.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The human readable product name of the device.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>submissions</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of submissions that contain this device.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwdeviceclass">public.hwdeviceclass</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwdevicedriverlink">public.hwdevicedriverlink</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwdevicenamevariant">public.hwdevicenamevariant</a></li>
-</ul>
-<!-- Indexes -->
-hwdevice__bus_product_id__idx bus_product_id hwdevice__name__idx
-name <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdeviceclass" id=
-"public.table.hwdeviceclass">hwdeviceclass</a></h2>
-<p>Capabilities of a device.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdeviceclass Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.hwdevice">public.hwdevice.id</a></td>
-<td>device</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A reference to a device.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>main_class</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The main class of a device. Legal values are defined by the
-HWMainClass enumeration.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sub_class</td>
-<td>integer</td>
-<td><br />
-<br />
-The sub-class of a device. Legal values are defined by the
-HWSubClass enumeration.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-hwdeviceclass__main_class__idx main_class
-hwdeviceclass__sub_class__idx sub_class <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdevicedriverlink" id=
-"public.table.hwdevicedriverlink">hwdevicedriverlink</a></h2>
-<p>Combinations of devices and drivers mentioned in
-submissions.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdevicedriverlink Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.hwdevice">public.hwdevice.id</a></td>
-<td>device</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The device controlled by the driver.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.hwdriver">public.hwdriver.id</a></td>
-<td>driver</td>
-<td>integer</td>
-<td><br />
-<br />
-The driver controlling the device.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwsubmissiondevice">public.hwsubmissiondevice</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswercountdevice">public.hwtestanswercountdevice</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswerdevice">public.hwtestanswerdevice</a></li>
-</ul>
-<!-- Indexes -->
-hwdevicedriverlink__device__idx device
-hwdevicedriverlink__driver__idx driver <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdevicenamevariant" id=
-"public.table.hwdevicenamevariant">hwdevicenamevariant</a></h2>
-<p>Alternative vendor and product names of devices.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdevicenamevariant Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwvendorname">public.hwvendorname.id</a></td>
-<td>vendor_name</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The alternative vendor name.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>product_name</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The alternative product name.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.hwdevice">public.hwdevice.id</a></td>
-<td>device</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The device named by this alternative vendor and product names.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>submissions</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of submissions containing this alternative vendor and
-product name.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-hwdevicenamevariant__device__idx device
-hwdevicenamevariant__product_name__idx product_name 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdmihandle" id=
-"public.table.hwdmihandle">hwdmihandle</a></h2>
-<p>A DMI Handle appearing in the DMI data of a submission.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdmihandle Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>handle</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The ID of the handle.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of the handle.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwsubmission">public.hwsubmission.id</a></td>
-<td>submission</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.hwdmivalue">public.hwdmivalue</a></li>
-</ul>
-<!-- Indexes -->
-hwdmihandle__submission__idx submission <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdmivalue" id=
-"public.table.hwdmivalue">hwdmivalue</a></h2>
-<p>Key/value pairs of DMI data of a handle.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdmivalue Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>key</td>
-<td>text</td>
-<td><br />
-<br />
-The key.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>value</td>
-<td>text</td>
-<td><br />
-<br />
-The value</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwdmihandle">public.hwdmihandle.id</a></td>
-<td>handle</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The handle to which this key/value pair belongs.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-hwdmivalue__hanlde__idx handle <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwdriver" id=
-"public.table.hwdriver">hwdriver</a></h2>
-<p>Information about a driver for a device</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdriver Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>package_name</td>
-<td>text</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The Debian package name a driver is a part of</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The name of a driver.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>license</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwdevicedriverlink">public.hwdevicedriverlink</a></li>
-</ul>
-<!-- Indexes -->
-hwdriver__name__idx name hwvendorname__name__idx name 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.hwdrivernames" id=
-"public.view.hwdrivernames">hwdrivernames</a></h2>
-<p>A view returning the distinct driver names stored in
-HWDriver.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdrivernames Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><br />
-<br />
-The name of a driver.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT DISTINCT 
-ON (hwdriver.name) hwdriver.id
-, hwdriver.name 
-FROM hwdriver 
-ORDER BY hwdriver.name
-, hwdriver.id;
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.hwdriverpackagenames" id=
-"public.view.hwdriverpackagenames">hwdriverpackagenames</a></h2>
-<p>A view returning the distinct Debian package names stored in
-HWDriver.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwdriverpackagenames Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>package_name</td>
-<td>text</td>
-<td><br />
-<br />
-The Debian package name a driver is a part of.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT DISTINCT 
-ON (hwdriver.package_name) hwdriver.id
-, hwdriver.package_name 
-FROM hwdriver 
-ORDER BY hwdriver.package_name
-, hwdriver.id;
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwsubmission" id=
-"public.table.hwsubmission">hwsubmission</a></h2>
-<p>Raw HWDB submission data</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwsubmission Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-Date and time of the submission (generated by the client).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_submitted</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Date and time of the submission (generated by the server).</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>format</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The format version of the submitted data, as given by the HWDB
-client. See HWSubmissionFormat for valid values.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The status of the submission. See HWSubmissionProcessingStatus for
-valid values.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>private</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-If false, the submitter allows public access to the data. If true,
-the data may be used only for statistical purposes.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>contactable</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-If True, the submitter agrees to be contacted by upstream
-developers and package maintainers for tests etc.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>submission_key</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-A unique submission ID.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><br />
-<br />
-A reference to the Person table: The owner/submitter of the
-data.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td><br />
-<br />
-A reference to the distroarchseries of the submission. This value
-is null, if the submitted values for distribution, distroseries and
-architecture do not match an existing entry in the Distroarchseries
-table.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>raw_submission</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A reference to a row of LibraryFileAlias. The library file contains
-the raw submission data.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwsystemfingerprint">public.hwsystemfingerprint.id</a></td>
-<td>system_fingerprint</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A reference to an entry of the HWDBSystemFingerPrint table. This
-table stores the system name as returned by HAL (system.vendor,
-system.product)</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>raw_emailaddress</td>
-<td>text</td>
-<td><br />
-<br />
-The email address of the submitter.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.hwdmihandle">public.hwdmihandle</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwsubmissionbug">public.hwsubmissionbug</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwsubmissiondevice">public.hwsubmissiondevice</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswer">public.hwtestanswer</a></li>
-</ul>
-<!-- Indexes -->
-hwsubmission__lower_raw_emailaddress__idx lower(raw_emailaddress)
-hwsubmission__owner__idx owner hwsubmission__raw_emailaddress__idx
-raw_emailaddress hwsubmission__raw_submission__idx raw_submission
-hwsubmission__status__idx status
-hwsubmission__system_fingerprint__idx system_fingerprint 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwsubmissionbug" id=
-"public.table.hwsubmissionbug">hwsubmissionbug</a></h2>
-<p>Link bugs to HWDB submissions</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwsubmissionbug Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwsubmission">public.hwsubmission.id</a></td>
-<td>submission</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-hwsubmissionbug__bug bug <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwsubmissiondevice" id=
-"public.table.hwsubmissiondevice">hwsubmissiondevice</a></h2>
-<p>Links between devices and submissions.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwsubmissiondevice Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwdevicedriverlink">public.hwdevicedriverlink.id</a></td>
-<td>device_driver_link</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The combination (device, driver) mentioned in a submission.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.hwsubmission">public.hwsubmission.id</a></td>
-<td>submission</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The submission mentioning this (device, driver) combination.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwsubmissiondevice">public.hwsubmissiondevice.id</a></td>
-<td>parent</td>
-<td>integer</td>
-<td><br />
-<br />
-The parent device of this device.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>hal_device_id</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The ID of the HAL node of this device in the submitted data.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwsubmissiondevice">public.hwsubmissiondevice</a></li>
-</ul>
-<!-- Indexes -->
-hwsubmissiondevice__device_driver_link__idx device_driver_link
-hwsubmissiondevice__parent__idx parent) WHERE (parent IS NOT NULL
-hwsubmissiondevice__submission__idx submission 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwsystemfingerprint" id=
-"public.table.hwsystemfingerprint">hwsystemfingerprint</a></h2>
-<p>A distinct list of "fingerprints" (HAL system.name,
-system.vendor) from raw submission data</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwsystemfingerprint Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fingerprint</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The fingerprint</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwsubmission">public.hwsubmission</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwtest" id="public.table.hwtest">hwtest</a></h2>
-<p>General information about a device test.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtest Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>namespace</td>
-<td>text</td>
-<td><br />
-<br />
-The namespace of a test.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The name of a test.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>version</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwtestanswer">public.hwtestanswer</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswerchoice">public.hwtestanswerchoice</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswercount">public.hwtestanswercount</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwtestanswer" id=
-"public.table.hwtestanswer">hwtestanswer</a></h2>
-<p>The answer for a test from a submission. This can be either a
-multiple choice selection or a numerical value. Exactly one of the
-columns choice, intval, floatval must be non-null.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswer Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwtestanswerchoice">public.hwtestanswerchoice.test#1</a>
-<a href="#public.table.hwtest">public.hwtest.id</a></td>
-<td>test</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The test answered by this answer.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.hwtestanswerchoice">public.hwtestanswerchoice.id#1</a>
-<a href=
-"#public.table.hwtestanswerchoice">public.hwtestanswerchoice.id</a></td>
-<td>choice</td>
-<td>integer</td>
-<td><br />
-<br />
-The selected value of a multiple choice test.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>intval</td>
-<td>integer</td>
-<td><br />
-<br />
-The integer result of a test with a numerical result.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>floatval</td>
-<td>double precision</td>
-<td><br />
-<br />
-The double precision floating point number result of a test with a
-numerical result.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>unit</td>
-<td>text</td>
-<td><br />
-<br />
-The physical unit of a test with a numerical result.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>comment</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.hwsubmission">public.hwsubmission.id</a></td>
-<td>submission</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswer Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>hwtestanswer_check</td>
-<td>CHECK (((((choice IS NULL) AND (unit IS NOT NULL)) AND ((intval
-IS NULL) &lt;&gt; (floatval IS NULL))) OR ((((choice IS NOT NULL)
-AND (unit IS NULL)) AND (intval IS NULL)) AND (floatval IS
-NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwtestanswerdevice">public.hwtestanswerdevice</a></li>
-</ul>
-<!-- Indexes -->
-hwtestanswer__choice__idx choice hwtestanswer__submission__idx
-submission hwtestanswer__test__idx test <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwtestanswerchoice" id=
-"public.table.hwtestanswerchoice">hwtestanswerchoice</a></h2>
-<p>Choice values of multiple choice tests/questions.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswerchoice Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#2 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>choice</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The choice value.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.hwtest">public.hwtest.id</a></td>
-<td>test</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-The test this choice belongs to.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwtestanswer">public.hwtestanswer</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswercount">public.hwtestanswercount</a></li>
-</ul>
-<!-- Indexes -->
-hwtestanswerchoice__test__idx test <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwtestanswercount" id=
-"public.table.hwtestanswercount">hwtestanswercount</a></h2>
-<p>Accumulated results of tests. Either the column choice or the
-columns average and sum_square must be non-null.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswercount Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.hwtest">public.hwtest.id</a></td>
-<td>test</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The test.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The distroarchseries for which results are accumulated,</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwtestanswerchoice">public.hwtestanswerchoice.id</a></td>
-<td>choice</td>
-<td>integer</td>
-<td><br />
-<br />
-The choice value of a multiple choice test.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>average</td>
-<td>double precision</td>
-<td><br />
-<br />
-The average value of the result of a numerical test.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sum_square</td>
-<td>double precision</td>
-<td><br />
-<br />
-The sum of the squares of the results of a numerical test.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>unit</td>
-<td>text</td>
-<td><br />
-<br />
-The physical unit of a numerical test result.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>num_answers</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of submissions from which the result is
-accumulated.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswercount Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>hwtestanswercount_check</td>
-<td>CHECK ((((((choice IS NULL) AND (average IS NOT NULL)) AND
-(sum_square IS NOT NULL)) AND (unit IS NOT NULL)) OR ((((choice IS
-NOT NULL) AND (average IS NULL)) AND (sum_square IS NULL)) AND
-(unit IS NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwtestanswercountdevice">public.hwtestanswercountdevice</a></li>
-</ul>
-<!-- Indexes -->
-hwtestanswercount__choice__idx choice
-hwtestanswercount__distroarchrelease__idx distroarchseries) WHERE
-(distroarchseries IS NOT NULL hwtestanswercount__test__idx test 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwtestanswercountdevice" id=
-"public.table.hwtestanswercountdevice">hwtestanswercountdevice</a></h2>
-<p>Association of accumulated test results and device/driver
-combinations.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswercountdevice Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwtestanswercount">public.hwtestanswercount.id</a></td>
-<td>answer</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The test answer.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.hwdevicedriverlink">public.hwdevicedriverlink.id</a></td>
-<td>device_driver</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The device/driver combination.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-hwtestanswercountdevice__device_driver__idx device_driver 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwtestanswerdevice" id=
-"public.table.hwtestanswerdevice">hwtestanswerdevice</a></h2>
-<p>Association of test results and device/driver combinations.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwtestanswerdevice Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwtestanswer">public.hwtestanswer.id</a></td>
-<td>answer</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The test answer.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.hwdevicedriverlink">public.hwdevicedriverlink.id</a></td>
-<td>device_driver</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The device/driver combination.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-hwtestanswerdevice__device_driver__idx device_driver 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwvendorid" id=
-"public.table.hwvendorid">hwvendorid</a></h2>
-<p>Associates tuples (bus, vendor ID for this bus) with vendor
-names.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwvendorid Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>bus</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The bus.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>vendor_id_for_bus</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The ID of a vendor for the bus given by column `bus`</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.hwvendorname">public.hwvendorname.id</a></td>
-<td>vendor_name</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.hwdevice">public.hwdevice</a></li>
-</ul>
-<!-- Indexes -->
-hwvendorid__vendor_id_for_bus__idx vendor_id_for_bus
-hwvendorid__vendorname__idx vendor_name <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.hwvendorname" id=
-"public.table.hwvendorname">hwvendorname</a></h2>
-<p>A list of hardware vendor names.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.hwvendorname Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The name of a vendor.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.hwdevicenamevariant">public.hwdevicenamevariant</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.hwvendorid">public.hwvendorid</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.ircid" id="public.table.ircid">ircid</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.ircid Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>network</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>nickname</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-ircid_person_idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.jabberid" id=
-"public.table.jabberid">jabberid</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.jabberid Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>jabberid</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-jabberid_person_idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.job" id="public.table.job">job</a></h2>
-<p>Common info about a job.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.job Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#1 PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>requester</td>
-<td>integer</td>
-<td><br />
-<br />
-Ther person who requested this job (if applicable).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reason</td>
-<td>text</td>
-<td><br />
-<br />
-The reason that this job was created (if applicable)</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-An enum (JobStatus) indicating the job status, one of: new,
-in-progress, complete, failed, cancelling, cancelled.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>progress</td>
-<td>integer</td>
-<td><br />
-<br />
-The percentage complete. Can be NULL for some jobs that do not
-report progress.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_report_seen</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The last time the progress was reported.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>next_report_due</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The next time a progress report is expected.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>attempt_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of times this job has been attempted.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>max_retries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The maximum number of retries valid for this job.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>log</td>
-<td>text</td>
-<td><br />
-<br />
-If provided, this is the tail of the log file being generated by
-the running job.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>scheduled_start</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The time when the job should start</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lease_expires</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The time when the lease expires.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The time when the job was created.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_started</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-If the job has started, the time when the job started.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_finished</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-If the job has finished, the time when the job finished.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.branchjob">public.branchjob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposaljob">public.branchmergeproposaljob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mergedirectivejob">public.mergedirectivejob</a></li>
-</ul>
-<!-- Indexes -->
-job__requester__key requester) WHERE (requester IS NOT NULL 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.karma" id="public.table.karma">karma</a></h2>
-<p>Used to quantify all the 'operations' a user performs inside the
-system, which maybe reporting and fixing bugs, uploading packages,
-end-user support, wiki editting, etc.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.karma Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-A timestamp for the assignment of this Karma.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The Person for wich this Karma was assigned.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.karmaaction">public.karmaaction.id</a></td>
-<td>action</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A foreign key to the KarmaAction table.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The Project to which this Product belongs. An entry on this table
-with a non-NULL Project and a NULL Product represents the total
-karma of the person across all products of that project..</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The Distribution on which a person performed an action that
-resulted on this karma.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The SourcePackageName on which a person performed an action that
-resulted on this karma.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-karma_person_datecreated_idx person, datecreated 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.karmaaction" id=
-"public.table.karmaaction">karmaaction</a></h2>
-<p>Stores all the actions that would give karma to the user which
-performed it.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.karmaaction Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.karmacategory">public.karmacategory.id</a></td>
-<td>category</td>
-<td>integer</td>
-<td><br />
-<br />
-A dbschema value used to group actions together.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>points</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of points this action is worth of.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The unique name of this action.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.karma">public.karma</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.karmacache" id=
-"public.table.karmacache">karmacache</a></h2>
-<p>Stores a cached value of a person's karma points, grouped by the
-action category and the context where that action was
-performed.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.karmacache Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person which performed the actions of this category, and thus
-got the karma.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>category</td>
-<td>integer</td>
-<td><br />
-<br />
-The category of the actions.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>karmavalue</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The karma points of all actions of this category performed by this
-person on this context (product/distribution).</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.karmacache Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>just_distribution</td>
-<td>CHECK (((distribution IS NULL) OR ((product IS NULL) AND
-(project IS NULL))))</td>
-</tr>
-<tr class="tr1">
-<td>just_product</td>
-<td>CHECK (((product IS NULL) OR ((project IS NULL) AND
-(distribution IS NULL))))</td>
-</tr>
-<tr class="tr0">
-<td>just_project</td>
-<td>CHECK (((project IS NULL) OR ((product IS NULL) AND
-(distribution IS NULL))))</td>
-</tr>
-<tr class="tr1">
-<td>sourcepackagename_requires_distribution</td>
-<td>CHECK (((sourcepackagename IS NULL) OR (distribution IS NOT
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-karmacache__category__karmavalue__idx category, karmavalue) WHERE
-((((category IS NOT NULL) AND (product IS NULL)) AND (project IS
-NULL)) AND (distribution IS NULL)
-karmacache__distribution__category__karmavalue__idx distribution,
-category, karmavalue) WHERE (((category IS NOT NULL) AND
-(distribution IS NOT NULL)) AND (sourcepackagename IS NULL)
-karmacache__distribution__karmavalue__idx distribution, karmavalue)
-WHERE (((category IS NULL) AND (distribution IS NOT NULL)) AND
-(sourcepackagename IS NULL) karmacache__karmavalue__idx karmavalue)
-WHERE ((((category IS NULL) AND (product IS NULL)) AND (project IS
-NULL)) AND (distribution IS NULL) karmacache__person__category__idx
-person, category karmacache__product__category__karmavalue__idx
-product, category, karmavalue) WHERE ((category IS NOT NULL) AND
-(product IS NOT NULL) karmacache__product__karmavalue__idx product,
-karmavalue) WHERE ((category IS NULL) AND (product IS NOT NULL)
-karmacache__project__category__karmavalue__idx project, category,
-karmavalue) WHERE (project IS NOT NULL
-karmacache__project__karmavalue__idx project, karmavalue) WHERE
-((category IS NULL) AND (project IS NOT NULL)
-karmacache__sourcepackagename__category__karmavalue__idx
-sourcepackagename, distribution, category, karmavalue) WHERE
-((category IS NOT NULL) AND (sourcepackagename IS NOT NULL)
-karmacache__sourcepackagename__distribution__karmavalue__idx
-sourcepackagename, distribution, karmavalue) WHERE
-(sourcepackagename IS NOT NULL
-karmacache__sourcepackagename__karmavalue__idx sourcepackagename,
-distribution, karmavalue) WHERE ((category IS NULL) AND
-(sourcepackagename IS NOT NULL) karmacache_person_idx person
-karmacache_top_in_category_idx person, category, karmavalue) WHERE
-((((product IS NULL) AND (project IS NULL)) AND (sourcepackagename
-IS NULL)) AND (distribution IS NULL) <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.karmacategory" id=
-"public.table.karmacategory">karmacategory</a></h2>
-<p>A category of karma. This allows us to present an overall
-picture of the different areas where a user has been active.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.karmacategory Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.karmaaction">public.karmaaction</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.karmatotalcache" id=
-"public.table.karmatotalcache">karmatotalcache</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.karmatotalcache Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>karma_total</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.language" id=
-"public.table.language">language</a></h2>
-<p>A human language.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.language Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>code</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The ISO 639 code for this language</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>englishname</td>
-<td>text</td>
-<td><br />
-<br />
-The english name for this language</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>nativename</td>
-<td>text</td>
-<td><br />
-<br />
-The name of this language in the language itself</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pluralforms</td>
-<td>integer</td>
-<td><br />
-<br />
-The number of plural forms this language has</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>pluralexpression</td>
-<td>text</td>
-<td><br />
-<br />
-The plural expression for this language, as used by gettext</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>visible</td>
-<td>boolean</td>
-<td><i>NOT NULL</i><br />
-<br />
-Whether this language should usually be visible or not</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>direction</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The direction that text is written in this language</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>uuid</td>
-<td>text</td>
-<td><br />
-<br />
-Mozilla language pack unique ID</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.language Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_language</td>
-<td>CHECK (((pluralforms IS NULL) = (pluralexpression IS
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.customlanguagecode">public.customlanguagecode</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroserieslanguage">public.distroserieslanguage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwtestanswer">public.hwtestanswer</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.person">public.person</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.personlanguage">public.personlanguage</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pocomment">public.pocomment</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pofile">public.pofile</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.posubscription">public.posubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.question">public.question</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.spokenin">public.spokenin</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationmessage">public.translationmessage</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.translator">public.translator</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.languagepack" id=
-"public.table.languagepack">languagepack</a></h2>
-<p>Store exported language packs for DistroSeries.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.languagepack Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>file</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Librarian file where the language pack is stored.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_exported</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When was exported the language pack.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_used</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When did we stop using the language pack. It's used to decide
-whether we can remove it completely from the system. When it's
-being used, its value is NULL</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The distribution series from where this language pack was
-exported.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>type</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-Type of language pack. There are two types available, 1: Full
-export, 2: Update export based on language_pack_that_updates
-export.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.languagepack">public.languagepack.id</a></td>
-<td>updates</td>
-<td>integer</td>
-<td><br />
-<br />
-The LanguagePack that this one updates.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.languagepack Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_updates</td>
-<td>CHECK ((((type = 2) AND (updates IS NOT NULL)) OR ((type = 1)
-AND (updates IS NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.distroseries">public.distroseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.languagepack">public.languagepack</a></li>
-</ul>
-<!-- Indexes -->
-languagepack__file__idx file <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.launchpaddatabaserevision" id=
-"public.table.launchpaddatabaserevision">launchpaddatabaserevision</a></h2>
-<p>This table contains a list of the database patches that have
-been successfully applied to this database.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.launchpaddatabaserevision Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>major</td>
-<td>integer</td>
-<td><i>PRIMARY KEY</i><br />
-<br />
-Major number. This is the version of the baseline schema the patch
-was made agains.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>minor</td>
-<td>integer</td>
-<td><i>PRIMARY KEY</i><br />
-<br />
-Minor number. Patches made during development each increment the
-minor number.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>patch</td>
-<td>integer</td>
-<td><i>PRIMARY KEY</i><br />
-<br />
-The patch number will hopefully always be '0', as it exists to
-support emergency patches made to the production server. eg. If
-production is running '4.0.0' and needs to have a patch applied
-ASAP, we would create a '4.0.1' patch and roll it out. We then may
-need to refactor all the existing '4.x.0' patches.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.launchpadstatistic" id=
-"public.table.launchpadstatistic">launchpadstatistic</a></h2>
-<p>A store of system-wide statistics or other integer values, keyed
-by names. The names are unique and the values can be any integer.
-Each field has a place to store the timestamp when it was last
-updated, so it is possible to know how far out of date any given
-statistic is.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.launchpadstatistic Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>value</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dateupdated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.libraryfilealias" id=
-"public.table.libraryfilealias">libraryfilealias</a></h2>
-<p>LibraryFileAlias: A librarian file's alias. The librarian
-stores, along with the file contents, a record stating the file
-name and mimetype. This table represents it.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.libraryfilealias Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilecontent">public.libraryfilecontent.id</a></td>
-<td>content</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The libraryfilecontent which is the data in this file.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>filename</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The name of the file. E.g. "foo_1.0-1_i386.deb"</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>mimetype</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The mime type of the file. E.g. "application/x-debian-package"</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>expires</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The expiry date of this file. If NULL, this item may be removed as
-soon as it is no longer referenced. If set, the item will not be
-removed until this date. Once the date is passed, the file may be
-removed from disk even if this item is still being referenced (in
-which case content.deleted will be true)</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>last_accessed</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-Roughly when this file was last retrieved from the Librarian.
-Initially set to this item's creation date.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The timestamp when this alias was created.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>restricted</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Is this file available only from the restricted librarian?</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>hits</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of times this file has been downloaded.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.libraryfilealias Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_filename</td>
-<td>CHECK ((filename !~~ '%/%'::text))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.binarypackagefile">public.binarypackagefile</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugattachment">public.bugattachment</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.build">public.build</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportresult">public.codeimportresult</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.diff">public.diff</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distribution">public.distribution</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwsubmission">public.hwsubmission</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.languagepack">public.languagepack</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.libraryfiledownloadcount">public.libraryfiledownloadcount</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mergedirectivejob">public.mergedirectivejob</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.message">public.message</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.messageapproval">public.messageapproval</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.messagechunk">public.messagechunk</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorproberecord">public.mirrorproberecord</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.openidrpconfig">public.openidrpconfig</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.packagediff">public.packagediff</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageupload">public.packageupload</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageuploadcustom">public.packageuploadcustom</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.person">public.person</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.pocketchroot">public.pocketchroot</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.potemplate">public.potemplate</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.product">public.product</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productreleasefile">public.productreleasefile</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.project">public.project</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.shipitreport">public.shipitreport</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.shippingrun">public.shippingrun</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sourcepackagereleasefile">public.sourcepackagereleasefile</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.sprint">public.sprint</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.temporaryblobstorage">public.temporaryblobstorage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationimportqueueentry">public.translationimportqueueentry</a></li>
-</ul>
-<!-- Indexes -->
-libraryfilealias__expires__idx expires
-libraryfilealias__filename__idx filename
-libraryfilealias_content_idx content <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.libraryfilecontent" id=
-"public.table.libraryfilecontent">libraryfilecontent</a></h2>
-<p>LibraryFileContent: A librarian file's contents. The librarian
-stores files in a safe and transactional way. This table represents
-the contents of those files within the database.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.libraryfilecontent Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The date on which this librarian file was created</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datemirrored</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the file was mirrored from the librarian onto the backup
-server</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>filesize</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The size of the file</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sha1</td>
-<td>character(40)</td>
-<td><i>NOT NULL</i><br />
-<br />
-The SHA1 sum of the file's contents</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>deleted</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-This file has been removed from disk by the librarian garbage
-collector.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>md5</td>
-<td>character(32)</td>
-<td><i>NOT NULL</i><br />
-<br />
-The MD5 sum of the file's contents</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sha256</td>
-<td>character(64)</td>
-<td><br />
-<br />
-The SHA256 sum of the file's contents</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.libraryfilealias">public.libraryfilealias</a></li>
-</ul>
-<!-- Indexes -->
-libraryfilecontent__md5__idx md5 libraryfilecontent__sha256__idx
-sha256 libraryfilecontent_sha1_filesize_idx sha1, filesize 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.libraryfiledownloadcount" id=
-"public.table.libraryfiledownloadcount">libraryfiledownloadcount</a></h2>
-<p>The number of daily downloads for a given LibraryFileAlias.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.libraryfiledownloadcount Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>libraryfilealias</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The LibraryFileAlias.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>day</td>
-<td>date</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The day of the downloads.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of downloads.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.country">public.country.id</a></td>
-<td>country</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The country from where the download requests came from.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.logintoken" id=
-"public.table.logintoken">logintoken</a></h2>
-<p>LoginToken stores one time tokens used by Launchpad for
-validating email addresses and other tasks that require verifying
-an email address is valid such as password recovery and account
-merging. This table will be cleaned occasionally to remove expired
-tokens. Expiry time is not yet defined.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.logintoken Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>requester</td>
-<td>integer</td>
-<td><br />
-<br />
-The Person that made this request. This will be null for password
-recovery requests.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>requesteremail</td>
-<td>text</td>
-<td><br />
-<br />
-The email address that was used to login when making this request.
-This provides an audit trail to help the end user confirm that this
-is a valid request. It is not a link to the EmailAddress table as
-this may be changed after the request is made. This field will be
-null for password recovery requests.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>email</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The email address that this request was sent to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The timestamp that this request was made.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>tokentype</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of request, as per dbschema.TokenType.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>token</td>
-<td>text</td>
-<td><i>UNIQUE</i><br />
-<br />
-The token (not the URL) emailed used to uniquely identify this
-request. This token will be used to generate a URL that when
-clicked on will continue a workflow.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fingerprint</td>
-<td>text</td>
-<td><br />
-<br />
-The GPG key fingerprint to be validated on this transaction, it
-means that a new register will be created relating this given key
-with the requester in question. The requesteremail still passing
-for the same usual checks.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>redirection_url</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_consumed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date and time when this token was consumed. It's NULL if it
-hasn't been consumed yet.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.logintoken Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_fingerprint</td>
-<td>CHECK (((fingerprint IS NULL) OR
-valid_fingerprint(fingerprint)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-logintoken_requester_idx requester <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mailinglist" id=
-"public.table.mailinglist">mailinglist</a></h2>
-<p>The mailing list for a team. Teams may have zero or one mailing
-list, and a mailing list is associated with exactly one team. This
-table manages the state changes that a team mailing list can go
-through, and it contains information that will be used to instruct
-Mailman how to create, delete, and modify mailing lists (via
-XMLRPC).</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mailinglist Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>team</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The team this mailing list is associated with.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The id of the Person who requested this list be created.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_registered</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Date the list was requested to be created</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>reviewer</td>
-<td>integer</td>
-<td><br />
-<br />
-The id of the Person who reviewed the creation request, or NULL if
-not yet reviewed.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_reviewed</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date the request was reviewed, or NULL if not yet
-reviewed.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_activated</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date the list was (last) activated. If the list is not yet
-active, this field will be NULL.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The current status of the mailing list, as a
-dbschema.MailingListStatus value.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>welcome_message</td>
-<td>text</td>
-<td><br />
-<br />
-Text sent to new members when they are subscribed to the team list.
-If NULL, no welcome message is sent.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.mailinglistsubscription">public.mailinglistsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.messageapproval">public.messageapproval</a></li>
-</ul>
-<!-- Indexes -->
-mailinglist__date_registered__idx status, date_registered
-mailinglist__registrant__idx registrant mailinglist__reviewer__idx
-reviewer <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mailinglistban" id=
-"public.table.mailinglistban">mailinglistban</a></h2>
-<p>Track explicit Launchpad-wide posting bans imposed on people by
-Launchpad administrators.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mailinglistban Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who was banned.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>banned_by</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The administrator who imposed the ban.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_banned</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When the ban was imposed.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reason</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The reason for the ban.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-mailinglistban__banned_by__idx banned_by
-mailinglistban__person__idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mailinglistsubscription" id=
-"public.table.mailinglistsubscription">mailinglistsubscription</a></h2>
-<p>Track the subscriptions of a person to team mailing lists.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mailinglistsubscription Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who is subscribed to the mailing list.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.mailinglist">public.mailinglist.id</a></td>
-<td>mailing_list</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The mailing list this person is subscribed to.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_joined</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date this person subscribed to the mailing list.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>email_address</td>
-<td>integer</td>
-<td><br />
-<br />
-Which of the person's email addresses are subscribed to the mailing
-list. This may be NULL to indicate that it's the person's preferred
-address.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-mailinglistsubscription__email_address__idx email_address) WHERE
-(email_address IS NOT NULL
-mailinglistsubscription__mailing_list__idx mailing_list 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mentoringoffer" id=
-"public.table.mentoringoffer">mentoringoffer</a></h2>
-<p>An offer to provide mentoring if someone wa nts to help get a
-specific bug fixed or blueprint implemented. These offers are
-specifically associated with a team in which the offeror is a
-member, so it beco mes possible to encourage people who want to
-join a team to start by working on things that existing team
-members are willing to mentor.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mentoringoffer Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>team</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-This is the team to which this offer of mentoring is associated. We
-associate each offer of mentoring with a team, de signated as "the
-team which will most benefit from the bug fix or spec implement
-ation", and this then allows us to provide a list of work for which
-mentoring is available for prospective members of those teams. This
-is really the "onramp" i dea - the list is the "onramp" to
-membership in the relevant team.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.bug">public.bug.id</a></td>
-<td>bug</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.specification">public.specification.id</a></td>
-<td>specification</td>
-<td>integer</td>
-<td><i>UNIQUE#2</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mentoringoffer Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>context_required</td>
-<td>CHECK (((bug IS NULL) &lt;&gt; (specification IS NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-mentoringoffer__owner__idx owner mentoringoffer__team__idx team 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mergedirectivejob" id=
-"public.table.mergedirectivejob">mergedirectivejob</a></h2>
-<p>A job to process a merge directive.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mergedirectivejob Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.job">public.job.id</a></td>
-<td>job</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The job associated with this MergeDirectiveJob.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>merge_directive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Full MIME content of the message containing the merge
-directive.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>action</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Enumeration of the action to perform with the merge directive; push
-or create merge proposal.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-mergedirectivejob__merge_directive__idx merge_directive 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.message" id="public.table.message">message</a></h2>
-<p>This table stores a single RFC822-style message. Messages can be
-threaded (using the parent field). These messages can then be
-referenced from elsewhere in the system, such as the BugMessage
-table, integrating messageboard facilities with the rest of The
-Launchpad.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.message Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>subject</td>
-<td>text</td>
-<td><br />
-<br />
-The title text of the message, or the subject if it was an
-email.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>parent</td>
-<td>integer</td>
-<td><br />
-<br />
-A "parent message". This allows for some level of threading in
-Messages.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The distribution in which this message originated, if we know
-it.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>rfc822msgid</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>raw</td>
-<td>integer</td>
-<td><br />
-<br />
-The original unadulterated message if it arrived via email. This is
-required to provide access to the original, undecoded message.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.bountymessage">public.bountymessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugattachment">public.bugattachment</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugmessage">public.bugmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnotification">public.bugnotification</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnotificationattachment">public.bugnotificationattachment</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codereviewmessage">public.codereviewmessage</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.message">public.message</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.messageapproval">public.messageapproval</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.messagechunk">public.messagechunk</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.questionmessage">public.questionmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specificationmessage">public.specificationmessage</a></li>
-</ul>
-<!-- Indexes -->
-message_fti fti message_owner_idx owner message_parent_idx parent
-message_raw_idx raw) WHERE (raw IS NOT NULL message_rfc822msgid_idx
-rfc822msgid <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.messageapproval" id=
-"public.table.messageapproval">messageapproval</a></h2>
-<p>Track mailing list postings awaiting approval from the team
-owner.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.messageapproval Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>posted_by</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who posted the message.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.mailinglist">public.mailinglist.id</a></td>
-<td>mailing_list</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The mailing list to which the message was posted.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>posted_message</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Foreign key to libraryfilealias table pointing to where the posted
-message's text lives.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>posted_date</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date the message was posted.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The status of the posted message. Values are described in
-dbschema.PostedMessageStatus.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>disposed_by</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who disposed of (i.e. approved or rejected) the message,
-or NULL if no disposition has yet been made.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>disposal_date</td>
-<td>timestamp without time zone</td>
-<td><i>DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date on which this message was disposed, or NULL if no
-disposition has yet been made.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reason</td>
-<td>text</td>
-<td><br />
-<br />
-The reason for the current status if any. This information will be
-displayed to the end user and mailing list moderators need to be
-aware of this - not a private whiteboard.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Foreign key to message table pointing to the posted message.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-messageapproval__disposed_by__idx disposed_by) WHERE (disposed_by
-IS NOT NULL messageapproval__mailing_list__status__posted_date__idx
-mailing_list, status, posted_date messageapproval__message__idx
-message messageapproval__posted_by__idx posted_by
-messageapproval__posted_message__idx posted_message 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.messagechunk" id=
-"public.table.messagechunk">messagechunk</a></h2>
-<p>This table stores a single chunk of a possibly multipart
-message. There will be at least one row in this table for each
-message. text/* parts are stored in the content column. All other
-parts are stored in the Librarian and referenced via the blob
-column. If both content and blob are NULL, then this chunk has been
-removed (eg. offensive, legal reasons, virus etc.)</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.messagechunk Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.message">public.message.id</a></td>
-<td>message</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sequence</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Order of a particular chunk. Chunks are orders in ascending order
-starting from 1.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>content</td>
-<td>text</td>
-<td><br />
-<br />
-Text content for this chunk of the message. This content is full
-text searchable.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>blob</td>
-<td>integer</td>
-<td><br />
-<br />
-Binary content for this chunk of the message.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.messagechunk Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>text_or_content</td>
-<td>CHECK ((((blob IS NULL) AND (content IS NULL)) OR ((blob IS
-NULL) &lt;&gt; (content IS NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-messagechunk_blob_idx blob) WHERE (blob IS NOT NULL
-messagechunk_fti fti <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.milestone" id=
-"public.table.milestone">milestone</a></h2>
-<p>An identifier that helps a maintainer group together things in
-some way, e.g. "1.2" could be a Milestone that bazaar developers
-could use to mark a task as needing fixing in bazaar 1.2.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.milestone Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>UNIQUE#1 PRIMARY KEY UNIQUE#4</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.product">public.product.id</a> <a href=
-"#public.table.productseries">public.productseries.product#2</a></td>
-<td>product</td>
-<td>integer</td>
-<td><i>UNIQUE#3 UNIQUE#4</i><br />
-<br />
-The product for which this is a milestone.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE#2 UNIQUE#3 NOT NULL</i><br />
-<br />
-The identifier text, e.g. "1.2."</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.distribution#1</a>
-<a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2</i><br />
-<br />
-The distribution to which this milestone belongs, if it is a distro
-milestone.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>dateexpected</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-If set, the date on which we expect this milestone to be delivered.
-This allows for optional sorting by date.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-Whether or not this milestone should be displayed in general
-listings. All milestones will be visible on the "page of milestones
-for product foo", but we want to be able to screen out obviously
-old milestones over time, for the general listings and
-vocabularies.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.productseries">public.productseries.id#2</a>
-<a href="#public.table.productseries">public.productseries.id</a></td>
-<td>productseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The productseries for which this is a milestone. A milestone on a
-productseries is ALWAYS also a milestone for the same product. This
-is because milestones started out on products/distributions but are
-moving to being on series/distroseries.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id#1</a> <a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The distroseries for which this is a milestone. A milestone on a
-distroseries is ALWAYS also a milestone for the same distribution.
-This is because milestones started out on products/distributions
-but are moving to being on series/distroseries.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>summary</td>
-<td>text</td>
-<td><br />
-<br />
-This can be used to summarize the changes included in past
-milestones and to document the status of current milestones.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>codename</td>
-<td>text</td>
-<td><br />
-<br />
-A fun or easier to remember name for the milestone/release.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.milestone Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-<tr class="tr1">
-<td>valid_target</td>
-<td>CHECK ((NOT ((product IS NULL) AND (distribution IS
-NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productrelease">public.productrelease</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specification">public.specification</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.structuralsubscription">public.structuralsubscription</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirror" id="public.table.mirror">mirror</a></h2>
-<p>Stores general information about mirror sites. Both regular pull
-mirrors and top tier mirrors are included.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirror Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>baseurl</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The base URL to the mirror, including protocol and optional
-trailing slash.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.country">public.country.id</a></td>
-<td>country</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The country where the mirror is located.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-Unique name for the mirror, suitable for use in URLs.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-Description of the mirror.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>freshness</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 99</i><br />
-<br />
-dbschema.MirrorFreshness enumeration indicating freshness.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lastcheckeddate</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-UTC timestamp of when the last check for freshness and consistency
-was made. NULL indicates no check has ever been made.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>approved</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-True if this mirror has been approved by the Ubuntu/Canonical
-mirror manager, otherwise False.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.mirrorcontent">public.mirrorcontent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mirrorsourcecontent">public.mirrorsourcecontent</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirrorcdimagedistroseries" id=
-"public.table.mirrorcdimagedistroseries">mirrorcdimagedistroseries</a></h2>
-<p>The mirror of a given CD/DVD image.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirrorcdimagedistroseries Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distributionmirror">public.distributionmirror.id</a></td>
-<td>distribution_mirror</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The distribution mirror.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The Distribution Release.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>flavour</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The Distribution Release Flavour.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirrorcontent" id=
-"public.table.mirrorcontent">mirrorcontent</a></h2>
-<p>Stores which distroarchseries and compoenents a given mirror
-has.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirrorcontent Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.mirror">public.mirror.id</a></td>
-<td>mirror</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A distroarchseries that this mirror contains.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-What component of the distroarchseries that this mirror
-contains.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirrordistroarchseries" id=
-"public.table.mirrordistroarchseries">mirrordistroarchseries</a></h2>
-<p>The mirror of the packages of a given Distro Arch Release.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirrordistroarchseries Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distributionmirror">public.distributionmirror.id</a></td>
-<td>distribution_mirror</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The distribution mirror.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The distro arch series.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>freshness</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The freshness of the mirror, that is, how up-to-date it is.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The PackagePublishingPocket.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirrordistroseriessource" id=
-"public.table.mirrordistroseriessource">mirrordistroseriessource</a></h2>
-<p>The mirror of a given Distro Release</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirrordistroseriessource Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distributionmirror">public.distributionmirror.id</a></td>
-<td>distribution_mirror</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The distribution mirror.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The Distribution Release.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>freshness</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The freshness of the mirror, that is, how up-to-date it is.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirrorproberecord" id=
-"public.table.mirrorproberecord">mirrorproberecord</a></h2>
-<p>Records stored when a mirror is probed.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirrorproberecord Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distributionmirror">public.distributionmirror.id</a></td>
-<td>distribution_mirror</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The DistributionMirror.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>log_file</td>
-<td>integer</td>
-<td><br />
-<br />
-The log file of the probe.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i><br />
-<br />
-The date and time the probe was performed.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-mirrorproberecord__date_created__idx date_created
-mirrorproberecord__distribution_mirror__date_created__idx
-distribution_mirror, date_created mirrorproberecord__log_file__idx
-log_file) WHERE (log_file IS NOT NULL <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.mirrorsourcecontent" id=
-"public.table.mirrorsourcecontent">mirrorsourcecontent</a></h2>
-<p>Stores which distroseries and components a given mirror that
-includes source packages has.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.mirrorsourcecontent Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.mirror">public.mirror.id</a></td>
-<td>mirror</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A distroseries that this mirror contains.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-What component of the distroseries that this sourcepackage mirror
-contains.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.nameblacklist" id=
-"public.table.nameblacklist">nameblacklist</a></h2>
-<p>A list of regular expressions used to blacklist names.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.nameblacklist Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>regexp</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-A Python regular expression. It will be compiled with the
-IGNORECASE, UNICODE and VERBOSE flags. The Python search method
-will be used rather than match, so ^ markers should be used to
-indicate the start of a string.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>comment</td>
-<td>text</td>
-<td><br />
-<br />
-An optional comment on why this regexp was entered. It should not
-be displayed to non-admins and its only purpose is
-documentation.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.nameblacklist Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_regexp</td>
-<td>CHECK (valid_regexp(regexp))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.oauthaccesstoken" id=
-"public.table.oauthaccesstoken">oauthaccesstoken</a></h2>
-<p>An access token used by the consumer to act on behalf of one of
-our users.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.oauthaccesstoken Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.oauthconsumer">public.oauthconsumer.id</a></td>
-<td>consumer</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The consumer which is going to access the protected resources.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person on whose behalf the consumer will access Launchpad.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>permission</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The permission given by that person to the consumer.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date/time in which the token was created.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_expires</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-The date/time in which this token will stop being accepted by
-Launchpad.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>key</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-This token's unique key.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>secret</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The secret used by the consumer (together with the token's key) to
-access Launchpad on behalf of the person.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The product associated with this token.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td><br />
-<br />
-The project associated with this token.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The distribution associated with this token.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The sourcepackagename associated with this token.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.oauthaccesstoken Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>just_one_context</td>
-<td>CHECK ((null_count(ARRAY[product, project, distribution]) &gt;=
-2))</td>
-</tr>
-<tr class="tr1">
-<td>sourcepackagename_needs_distro</td>
-<td>CHECK (((sourcepackagename IS NULL) OR (distribution IS NOT
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.oauthnonce">public.oauthnonce</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.webserviceban">public.webserviceban</a></li>
-</ul>
-<!-- Indexes -->
-oauthaccesstoken__consumer__idx consumer
-oauthaccesstoken__date_expires__idx date_expires) WHERE
-(date_expires IS NOT NULL
-oauthaccesstoken__distribution__sourcepackagename__idx
-distribution, sourcepackagename) WHERE (distribution IS NOT NULL
-oauthaccesstoken__person__idx person oauthaccesstoken__product__idx
-product) WHERE (product IS NOT NULL oauthaccesstoken__project__idx
-project) WHERE (project IS NOT NULL <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.oauthconsumer" id=
-"public.table.oauthconsumer">oauthconsumer</a></h2>
-<p>A third part application that will access Launchpad on behalf of
-one of our users.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.oauthconsumer Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The creation date.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>disabled</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-Is this consumer disabled?</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>key</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The unique key for this consumer.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>secret</td>
-<td>text</td>
-<td><br />
-<br />
-The secret used by this consumer (together with its key) to
-identify itself with Launchpad.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.oauthaccesstoken">public.oauthaccesstoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.oauthrequesttoken">public.oauthrequesttoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.webserviceban">public.webserviceban</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.oauthnonce" id=
-"public.table.oauthnonce">oauthnonce</a></h2>
-<p>The unique nonce for any request with a given timestamp and
-access token. This is generated by the consumer.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.oauthnonce Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>request_timestamp</td>
-<td>timestamp without time zone</td>
-<td><i>UNIQUE#1 NOT NULL DEFAULT timezone('UTC'::text,
-now())</i><br />
-<br />
-The date and time (as a timestamp) in which the request was
-made.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>nonce</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The nonce itself.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.oauthaccesstoken">public.oauthaccesstoken.id</a></td>
-<td>access_token</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The access token.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-oauthnonce__access_token__idx access_token
-oauthnonce__request_timestamp__idx request_timestamp 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.oauthrequesttoken" id=
-"public.table.oauthrequesttoken">oauthrequesttoken</a></h2>
-<p>A request token which, once authorized by the user, is exchanged
-for an access token.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.oauthrequesttoken Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.oauthconsumer">public.oauthconsumer.id</a></td>
-<td>consumer</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The consumer which is going to access the protected resources.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><br />
-<br />
-The person who authorized this token.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>permission</td>
-<td>integer</td>
-<td><br />
-<br />
-The permission given by the person to the consumer.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_expires</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the authorization is to expire.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date/time in which the token was created.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_reviewed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When the authorization request was authorized or rejected by the
-person.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>key</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-This token's unique key.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>secret</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The secret used by the consumer (together with the token's key) to
-get an access token once the user has authorized its use.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td><br />
-<br />
-The product associated with this token.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td><br />
-<br />
-The project associated with this token.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td><br />
-<br />
-The distribution associated with this token.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The sourcepackagename associated with this token.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.oauthrequesttoken Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>just_one_context</td>
-<td>CHECK ((null_count(ARRAY[product, project, distribution]) &gt;=
-2))</td>
-</tr>
-<tr class="tr1">
-<td>reviewed_request</td>
-<td>CHECK ((((date_reviewed IS NULL) = (person IS NULL)) AND
-((date_reviewed IS NULL) = (permission IS NULL))))</td>
-</tr>
-<tr class="tr0">
-<td>sourcepackagename_needs_distro</td>
-<td>CHECK (((sourcepackagename IS NULL) OR (distribution IS NOT
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-oauthrequesttoken__consumer__idx consumer
-oauthrequesttoken__date_created__idx date_created
-oauthrequesttoken__distribution__sourcepackagename__idx
-distribution, sourcepackagename) WHERE (distribution IS NOT NULL
-oauthrequesttoken__person__idx person) WHERE (person IS NOT NULL
-oauthrequesttoken__product__idx product) WHERE (product IS NOT NULL
-oauthrequesttoken__project__idx project) WHERE (project IS NOT NULL
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.officialbugtag" id=
-"public.table.officialbugtag">officialbugtag</a></h2>
-<p>Bug tags that have been officially endorced by this product's or
-distribution's lead</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.officialbugtag Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>tag</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.officialbugtag Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>context_required</td>
-<td>CHECK (((product IS NOT NULL) OR (distribution IS NOT
-NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidassociation" id=
-"public.table.openidassociation">openidassociation</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidassociation Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>server_url</td>
-<td>character varying(2047)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>handle</td>
-<td>character varying(255)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>secret</td>
-<td>bytea</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>issued</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lifetime</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>assoc_type</td>
-<td>character varying(64)</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidassociation Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>secret_length_constraint</td>
-<td>CHECK ((length(secret) &lt;= 128))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidauthorization" id=
-"public.table.openidauthorization">openidauthorization</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidauthorization Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.account">public.account.id</a></td>
-<td>account</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>client_id</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_expires</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>trust_root</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-openidauthorixation__account__troot__expires__client_id__idx
-account, trust_root, date_expires, client_id 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidconsumerassociation" id=
-"public.table.openidconsumerassociation">openidconsumerassociation</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidconsumerassociation Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>server_url</td>
-<td>character varying(2047)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>handle</td>
-<td>character varying(255)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>secret</td>
-<td>bytea</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>issued</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>lifetime</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>assoc_type</td>
-<td>character varying(64)</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidconsumerassociation Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>secret_length_constraint</td>
-<td>CHECK ((length(secret) &lt;= 128))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidconsumernonce" id=
-"public.table.openidconsumernonce">openidconsumernonce</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidconsumernonce Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>server_url</td>
-<td>character varying(2047)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>timestamp</td>
-<td>integer</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>salt</td>
-<td>character(40)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidnonce" id=
-"public.table.openidnonce">openidnonce</a></h2>
-<p>Nonces for our OpenID consumer.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidnonce Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>server_url</td>
-<td>character varying(2047)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>timestamp</td>
-<td>integer</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>salt</td>
-<td>character(40)</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidrpconfig" id=
-"public.table.openidrpconfig">openidrpconfig</a></h2>
-<p>Configuration information for OpenID Relying Parties</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidrpconfig Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>trust_root</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The trust root for this RP</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The human readable name for this RP</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A description of the RP. Should indicate why the RP wants the user
-to log in</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>logo</td>
-<td>integer</td>
-<td><br />
-<br />
-A reference to the logo for this RP</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>allowed_sreg</td>
-<td>text</td>
-<td><br />
-<br />
-A comma separated list of fields that can be sent to the RP via
-openid.sreg. The field names should not have the "openid.sreg."
-prefix</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>creation_rationale</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 13</i><br />
-<br />
-A person creation rationale to use for users who create an account
-while logging in to this RP</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>can_query_any_team</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-This RP can query for membership of any or all teams, including
-private teams. This setting overrides any other private team query
-ACLs, and should not be used if more granular options are
-suitable.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>auto_authorize</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-True if the user authorisation page is skipped by default for this
-RP.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-openidrpconfig__logo__idx logo <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.openidrpsummary" id=
-"public.table.openidrpsummary">openidrpsummary</a></h2>
-<p>The summary of the activity between a person and an RP.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.openidrpsummary Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.account">public.account.id</a></td>
-<td>account</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The account who used the RP.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>openid_identifier</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The OpenID identifier used to login.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>trust_root</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The trust root for the RP</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The creation date of this summary; the first time the person used
-the RP.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_used</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date the RP was last used.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>total_logins</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The total number of times the RP was used by the person.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-openidrpsummary__openid_identifier__idx openid_identifier
-openidrpsummary__trust_root__idx trust_root 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packagebugsupervisor" id=
-"public.table.packagebugsupervisor">packagebugsupervisor</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packagebugsupervisor Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>distribution</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>bug_supervisor</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packagebugsupervisor__bug_supervisor__idx bug_supervisor 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packagecopyrequest" id=
-"public.table.packagecopyrequest">packagecopyrequest</a></h2>
-<p>PackageCopyRequest: A table that captures the status and the
-details of an inter-archive package copy operation.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packagecopyrequest Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>target_archive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive to which packages will be copied.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>target_distroseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The target distroseries.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>target_component</td>
-<td>integer</td>
-<td><br />
-<br />
-The target component.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>target_pocket</td>
-<td>integer</td>
-<td><br />
-<br />
-The target pocket.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>copy_binaries</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>source_archive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive from which packages are to be copied.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>source_distroseries</td>
-<td>integer</td>
-<td><br />
-<br />
-The distroseries to which the packages to be copied belong in the
-source archive.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>source_component</td>
-<td>integer</td>
-<td><br />
-<br />
-The component to which the packages to be copied belong in the
-source archive.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>source_pocket</td>
-<td>integer</td>
-<td><br />
-<br />
-The pocket for the packages to be copied.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>requester</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who requested the archive operation.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Archive operation status, may be one of: new, in-progress,
-complete, failed, cancelling, cancelled.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>reason</td>
-<td>text</td>
-<td><br />
-<br />
-The reason why this copy operation was requested.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Date of creation for this archive operation.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_started</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-Start date/time of this archive operation.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_completed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When did this archive operation conclude?</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packagecopyrequest__datecreated__idx date_created
-packagecopyrequest__requester__idx requester
-packagecopyrequest__targetarchive__idx target_archive
-packagecopyrequest__targetdistroseries__idx target_distroseries)
-WHERE (target_distroseries IS NOT NULL <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packagediff" id=
-"public.table.packagediff">packagediff</a></h2>
-<p>This table stores diffs bettwen two scpecific
-SourcePackageRelease versions.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packagediff Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_requested</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Instant when the diff was requested.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>requester</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The Person responsible for the request.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease.id</a></td>
-<td>from_source</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The SourcePackageRelease to diff from.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease.id</a></td>
-<td>to_source</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The SourcePackageRelease to diff to.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_fulfilled</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-Instant when the diff was completed.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>diff_content</td>
-<td>integer</td>
-<td><br />
-<br />
-LibraryFileAlias containing the th diff results.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Request status, PENDING(0) when created then goes to COMPLETED(1)
-or FAILED(2), both terminal status where diff_content and
-date_fulfilled will contain the results of the request.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packagediff Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>distinct_sources</td>
-<td>CHECK ((from_source &lt;&gt; to_source))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packagediff__diff_content__idx diff_content
-packagediff__from_source__idx from_source
-packagediff__requester__idx requester packagediff__status__idx
-status packagediff__to_source__idx to_source 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packageselection" id=
-"public.table.packageselection">packageselection</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageselection Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.binarypackagename">public.binarypackagename.id</a></td>
-<td>binarypackagename</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>action</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.component">public.component.id</a></td>
-<td>component</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.section">public.section.id</a></td>
-<td>section</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>priority</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packageset" id=
-"public.table.packageset">packageset</a></h2>
-<p>Package sets facilitate the grouping of packages for purposes
-like the control of upload permissions, et.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageset Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-Date and time of creation.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The Person or team who owns the package set</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The name for the package set on hand.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The description for the package set on hand.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageset Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>packageset_name_check</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.archivepermission">public.archivepermission</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.flatpackagesetinclusion">public.flatpackagesetinclusion</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagesetinclusion">public.packagesetinclusion</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagesetsources">public.packagesetsources</a></li>
-</ul>
-<!-- Indexes -->
-packageset__owner__idx owner <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packagesetinclusion" id=
-"public.table.packagesetinclusion">packagesetinclusion</a></h2>
-<p>sets may form a set-subset hierarchy; this table facilitates the
-definition of these set-subset relationships.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packagesetinclusion Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageset">public.packageset.id</a></td>
-<td>parent</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The package set that is including a subset.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.packageset">public.packageset.id</a></td>
-<td>child</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The package set that is being included as a subset.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packagesetinclusion__child__idx child <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packagesetsources" id=
-"public.table.packagesetsources">packagesetsources</a></h2>
-<p>This table associates package sets and source package names.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packagesetsources Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageset">public.packageset.id</a></td>
-<td>packageset</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The associated package set.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The associated source package name.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packagesetsources__sourcepackagename__idx sourcepackagename 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packageupload" id=
-"public.table.packageupload">packageupload</a></h2>
-<p>An upload. This table stores information pertaining to uploads
-to a given DistroSeries/Archive.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageupload Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>status</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-This is an integer field containing the current status of the
-upload. Possible values are given by the UploadStatus class in
-dbschema.py</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-This integer field refers to the DistroSeries to which this upload
-is targeted</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-This is the pocket the upload is targeted at.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>changesfile</td>
-<td>integer</td>
-<td><br />
-<br />
-The changes file associated with this upload. It is null for
-records refering to a delayed-copy.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.gpgkey">public.gpgkey.id</a></td>
-<td>signing_key</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.archive">public.archive.id</a></td>
-<td>archive</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The archive to which this upload is targetted.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.packageuploadbuild">public.packageuploadbuild</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageuploadcustom">public.packageuploadcustom</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packageuploadsource">public.packageuploadsource</a></li>
-</ul>
-<!-- Indexes -->
-packageupload__changesfile__idx changesfile
-packageupload__distroseries__key distroseries
-packageupload__distroseries__status__idx distroseries, status
-packageupload__signing_key__idx signing_key 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packageuploadbuild" id=
-"public.table.packageuploadbuild">packageuploadbuild</a></h2>
-<p>An upload binary build. This table stores information pertaining
-to the builds in a package upload.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageuploadbuild Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageupload">public.packageupload.id</a></td>
-<td>packageupload</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-This integer field refers to the PackageUpload row that this source
-belongs to.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.build">public.build.id</a></td>
-<td>build</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-This integer field refers to the Build record related to this
-upload.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packageuploadbuild__build__idx build <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packageuploadcustom" id=
-"public.table.packageuploadcustom">packageuploadcustom</a></h2>
-<p>An uploaded custom format file. This table stores information
-pertaining to the custom upload formats in a package upload.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageuploadcustom Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageupload">public.packageupload.id</a></td>
-<td>packageupload</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The PackageUpload row this refers to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>customformat</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The format of this particular custom uploaded file.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>libraryfilealias</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The actual file as a librarian alias.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packageuploadcustom__libraryfilealias__idx libraryfilealias
-packageuploadcustom__packageupload__idx packageupload 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packageuploadsource" id=
-"public.table.packageuploadsource">packageuploadsource</a></h2>
-<p>Link between an upload and a source package. This table stores
-information pertaining to the source files in a package upload.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packageuploadsource Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.packageupload">public.packageupload.id</a></td>
-<td>packageupload</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-This integer field refers to the PackageUpload row that this source
-belongs to.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease.id</a></td>
-<td>sourcepackagerelease</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-This integer field refers to the SourcePackageRelease record
-related to this upload.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packageuploadsource__sourcepackagerelease__idx sourcepackagerelease
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.packaging" id=
-"public.table.packaging">packaging</a></h2>
-<p>DO NOT JOIN THROUGH THIS TABLE. This is a set of information
-linking upstream product series (branches) to distro packages, but
-it's not planned or likely to be complete, in the sense that we do
-not attempt to have information for every branch in every
-derivative distro managed in Launchpad. So don't join through this
-table to get from product to source package, or vice versa. Rather,
-use the ProductSeries.sourcepackages attribute, or the
-SourcePackage.productseries attribute. You may need to create a
-SourcePackage with a given sourcepackagename and distroseries, then
-use its .productrelease attribute. The code behind those methods
-does more than just join through the tables, it is also smart
-enough to look at related distro's and parent distroseries, and at
-Ubuntu in particular.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.packaging Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>packaging</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-A dbschema Enum (PackagingType) describing the way the upstream
-productseries has been packaged. Generally it will be of type
-PRIME, meaning that the upstream productseries is the primary
-substance of the package, but it might also be INCLUDES, if the
-productseries has been included as a statically linked library, for
-example. This allows us to say that a given Source Package INCLUDES
-libneon but is a PRIME package of tla, for example. By INCLUDES we
-mean that the code is actually lumped into the package as
-ancilliary support material, rather than simply depending on a
-separate packaging of that code.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The source package name for the source package that includes the
-upstream productseries described in this Packaging record. There is
-no requirement that such a sourcepackage actually be published in
-the distro.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-The distroseries in which the productseries has been packaged.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.productseries">public.productseries.id</a></td>
-<td>productseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The upstream product series that has been packaged in this
-distroseries sourcepackage.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><br />
-<br />
-This is not the "owner" in the sense of giving the person any
-special privileges to edit the Packaging record, it is simply a
-record of who told us about this packaging relationship. Note that
-we do not keep a history of these, so if someone sets it correctly,
-then someone else sets it incorrectly, we lose the first
-setting.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-packaging__distroseries__sourcepackagename__idx distroseries,
-sourcepackagename packaging_sourcepackagename_idx sourcepackagename
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.parsedapachelog" id=
-"public.table.parsedapachelog">parsedapachelog</a></h2>
-<p>A parsed apache log file for librarian.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.parsedapachelog Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>first_line</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The first line of this log file, smashed to ASCII. This uniquely
-identifies the log file, even if its filename is changed by log
-rotation or archival.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>bytes_read</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The number of bytes from this log file that have been parsed.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_parsed</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-parsedapachelog__first_line__idx first_line 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.person" id="public.table.person">person</a></h2>
-<p>A row represents a person if teamowner is NULL, and represents a
-team if teamowner is set.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.person Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>displayname</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-Person or group's name as it should be rendered to screen</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>teamowner</td>
-<td>integer</td>
-<td><br />
-<br />
-id of the team owner. Team owners will have authority to add or
-remove people from the team.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>teamdescription</td>
-<td>text</td>
-<td><br />
-<br />
-Informative description of the team. Format and restrictions are as
-yet undefined.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-Short mneumonic name uniquely identifying this person or team.
-Useful for url traversal or in places where we need to
-unambiguously refer to a person or team (as displayname is not
-unique).</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td><br />
-<br />
-Preferred language for this person (unset for teams). UI should be
-displayed in this language wherever possible.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fti</td>
-<td>ts2.tsvector</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>defaultmembershipperiod</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>defaultrenewalperiod</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>subscriptionpolicy</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The policy for new members to join this team.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>merged</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>addressline1</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>addressline2</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>organization</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>city</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>province</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.country">public.country.id</a></td>
-<td>country</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>postcode</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>phone</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>homepage_content</td>
-<td>text</td>
-<td><br />
-<br />
-A home page for this person in the Launchpad. In short, this is
-like a personal wiki page. The person will get to edit their own
-page, and it will be published on /people/foo/. Note that this is
-in text format, and will migrate to being in Moin format as a sort
-of mini-wiki-homepage.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>icon</td>
-<td>integer</td>
-<td><br />
-<br />
-The library file alias to a small image to be used as an icon
-whenever we are referring to that person.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>mugshot</td>
-<td>integer</td>
-<td><br />
-<br />
-The library file alias of a hackermugshot image to display as the
-"face" of a person, on their home page.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>hide_email_addresses</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>creation_rationale</td>
-<td>integer</td>
-<td><br />
-<br />
-The rationale for the creation of this person -- a dbschema
-value.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>creation_comment</td>
-<td>text</td>
-<td><br />
-<br />
-A text comment for the creation of this person.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>registrant</td>
-<td>integer</td>
-<td><br />
-<br />
-The user who created this profile.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>logo</td>
-<td>integer</td>
-<td><br />
-<br />
-The library file alias of a smaller version of this person's
-mugshot.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>renewal_policy</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 10</i><br />
-<br />
-The policy for membership renewal on this team.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>personal_standing</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The standing of the person, which indicates (for now, just) whether
-the person can post to a mailing list without requiring first post
-moderation. Values are documented in
-dbschema.PersonalStanding.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>personal_standing_reason</td>
-<td>text</td>
-<td><br />
-<br />
-The reason a person's standing has changed.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>mail_resumption_date</td>
-<td>date</td>
-<td><br />
-<br />
-A NULL resumption date or a date in the past indicates that there
-is no vacation in effect. Vacations are granular to the day, so a
-datetime is not necessary.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>mailing_list_auto_subscribe_policy</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-The auto-subscription policy for the person, i.e. whether and how
-the user is automatically subscribed to mailing lists for teams
-they join. Values are described in
-dbschema.MailingListAutoSubscribePolicy.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>mailing_list_receive_duplicates</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-True means the user wants to receive list copies of messages on
-which they are explicitly named as a recipient.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>visibility</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-person.PersonVisibility enumeration which can be set to Public,
-Public with Private Membership, or Private.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>verbose_bugnotifications</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-If true, all bugnotifications sent to this Person will include the
-bug description.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>account</td>
-<td>integer</td>
-<td><i>UNIQUE</i><br />
-<br />
-The Account linked to this Person, if there is one.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.person Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>creation_rationale_not_null_for_people</td>
-<td>CHECK (((creation_rationale IS NULL) = (teamowner IS NOT
-NULL)))</td>
-</tr>
-<tr class="tr1">
-<td>no_loops</td>
-<td>CHECK ((id &lt;&gt; teamowner))</td>
-</tr>
-<tr class="tr0">
-<td>non_empty_displayname</td>
-<td>CHECK ((btrim(displayname) &lt;&gt; ''::text))</td>
-</tr>
-<tr class="tr1">
-<td>people_have_no_emblems</td>
-<td>CHECK (((icon IS NULL) OR (teamowner IS NOT NULL)))</td>
-</tr>
-<tr class="tr0">
-<td>sane_defaultrenewalperiod</td>
-<td>CHECK (CASE WHEN (teamowner IS NULL) THEN (defaultrenewalperiod
-IS NULL) WHEN (renewal_policy = ANY (ARRAY[20, 30])) THEN
-((defaultrenewalperiod IS NOT NULL) AND (defaultrenewalperiod &gt;
-0)) ELSE ((defaultrenewalperiod IS NULL) OR (defaultrenewalperiod
-&gt; 0)) END)</td>
-</tr>
-<tr class="tr1">
-<td>teams_have_no_account</td>
-<td>CHECK (((account IS NULL) OR (teamowner IS NULL)))</td>
-</tr>
-<tr class="tr0">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.announcement">public.announcement</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.answercontact">public.answercontact</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.archive">public.archive</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archiveauthtoken">public.archiveauthtoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archivepermission">public.archivepermission</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.archivesubscriber">public.archivesubscriber</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bounty">public.bounty</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bountysubscription">public.bountysubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.branch">public.branch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchmergerobot">public.branchmergerobot</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchsubscription">public.branchsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.branchvisibilitypolicy">public.branchvisibilitypolicy</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bug">public.bug</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugaffectsperson">public.bugaffectsperson</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugbranch">public.bugbranch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnomination">public.bugnomination</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugnotificationrecipient">public.bugnotificationrecipient</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugpackageinfestation">public.bugpackageinfestation</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugproductinfestation">public.bugproductinfestation</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugsubscription">public.bugsubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtask">public.bugtask</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugtracker">public.bugtracker</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.bugtrackerperson">public.bugtrackerperson</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.bugwatch">public.bugwatch</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.builder">public.builder</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.codeimport">public.codeimport</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportevent">public.codeimportevent</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportjob">public.codeimportjob</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codeimportresult">public.codeimportresult</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.codereviewvote">public.codereviewvote</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.commercialsubscription">public.commercialsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distribution">public.distribution</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distributionmirror">public.distributionmirror</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroarchseries">public.distroarchseries</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distrocomponentuploader">public.distrocomponentuploader</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.distroseries">public.distroseries</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.entitlement">public.entitlement</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.faq">public.faq</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.gpgkey">public.gpgkey</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.hwsubmission">public.hwsubmission</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.ircid">public.ircid</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.jabberid">public.jabberid</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.job">public.job</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.karma">public.karma</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.karmacache">public.karmacache</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.karmatotalcache">public.karmatotalcache</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.logintoken">public.logintoken</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.mailinglist">public.mailinglist</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mailinglistban">public.mailinglistban</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mailinglistsubscription">public.mailinglistsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.mentoringoffer">public.mentoringoffer</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.message">public.message</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.messageapproval">public.messageapproval</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.mirror">public.mirror</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.oauthaccesstoken">public.oauthaccesstoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.oauthrequesttoken">public.oauthrequesttoken</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagebugsupervisor">public.packagebugsupervisor</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.packagecopyrequest">public.packagecopyrequest</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.packagediff">public.packagediff</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.packageset">public.packageset</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.packaging">public.packaging</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.person">public.person</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.personlanguage">public.personlanguage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.personlocation">public.personlocation</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.personnotification">public.personnotification</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pocomment">public.pocomment</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.poexportrequest">public.poexportrequest</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pofile">public.pofile</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.pofiletranslator">public.pofiletranslator</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.poll">public.poll</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.posubscription">public.posubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.potemplate">public.potemplate</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.product">public.product</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productrelease">public.productrelease</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productreleasefile">public.productreleasefile</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.productseries">public.productseries</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.project">public.project</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.pushmirroraccess">public.pushmirroraccess</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.question">public.question</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.questionreopening">public.questionreopening</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.questionsubscription">public.questionsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.revisionauthor">public.revisionauthor</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securebinarypackagepublishinghistory">public.securebinarypackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.securesourcepackagepublishinghistory">public.securesourcepackagepublishinghistory</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.seriessourcepackagebranch">public.seriessourcepackagebranch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.signedcodeofconduct">public.signedcodeofconduct</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sourcepackagerelease">public.sourcepackagerelease</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specification">public.specification</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specificationbranch">public.specificationbranch</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specificationfeedback">public.specificationfeedback</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.specificationsubscription">public.specificationsubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.sprint">public.sprint</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sprintattendance">public.sprintattendance</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.sprintspecification">public.sprintspecification</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.sshkey">public.sshkey</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.structuralsubscription">public.structuralsubscription</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.teammembership">public.teammembership</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.teamparticipation">public.teamparticipation</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationgroup">public.translationgroup</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationimportqueueentry">public.translationimportqueueentry</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationmessage">public.translationmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationrelicensingagreement">public.translationrelicensingagreement</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.translator">public.translator</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.usertouseremail">public.usertouseremail</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.vote">public.vote</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.votecast">public.votecast</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.webserviceban">public.webserviceban</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.wikiname">public.wikiname</a></li>
-</ul>
-<!-- Indexes -->
-person__icon__idx icon) WHERE (icon IS NOT NULL person__logo__idx
-logo) WHERE (logo IS NOT NULL person__merged__idx merged) WHERE
-(merged IS NOT NULL person__mugshot__idx mugshot) WHERE (mugshot IS
-NOT NULL person__teamowner__idx teamowner) WHERE (teamowner IS NOT
-NULL person_datecreated_idx datecreated person_fti fti
-person_sorting_idx person_sort_key(displayname, name) 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.personlanguage" id=
-"public.table.personlanguage">personlanguage</a></h2>
-<p>PersonLanguage: This table stores the preferred languages that a
-Person has, it's used in Rosetta to select the languages that
-should be showed to be translated.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.personlanguage Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-This field is a reference to a Person object that has this
-preference.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-This field is a reference to a Language object that says that the
-Person associated to this row knows how to translate/understand
-this language.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.personlocation" id=
-"public.table.personlocation">personlocation</a></h2>
-<p>The geographical coordinates and time zone for a person.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.personlocation Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>latitude</td>
-<td>double precision</td>
-<td><br />
-<br />
-The latitude this person has given for their default location.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>longitude</td>
-<td>double precision</td>
-<td><br />
-<br />
-The longitude this person has given for their default
-location.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>time_zone</td>
-<td>text</td>
-<td><br />
-<br />
-The name of the time zone this person prefers (if unset, UTC is
-used). UI should display dates and times in this time zone wherever
-possible.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>last_modified_by</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who last updated this record. We allow people to provide
-location and time zone information for other users, when those
-users have not specified their own location. This allows people to
-garden the location information for their teams, for example, like
-a wiki.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_modified</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-The date this record was last modified.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>visible</td>
-<td>boolean</td>
-<td><i>DEFAULT true</i><br />
-<br />
-Should this person's location and time zone be visible to
-others?</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>locked</td>
-<td>boolean</td>
-<td><i>DEFAULT false</i><br />
-<br />
-Whether or not this record can be modified by someone other than
-the person himself?</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.personlocation Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>latitude_and_longitude_together</td>
-<td>CHECK (((latitude IS NULL) = (longitude IS NULL)))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.personnotification" id=
-"public.table.personnotification">personnotification</a></h2>
-<p>Notifications to be sent that are related to edits and changes
-of the details of a specific person or team. Note that these are
-not keyed against the "person who will be notified", these are
-notifications "about a person". We use this table to queue up
-notifications that can then be sent asyncronously - when one user
-edits information about another person (like the PersonLocation) we
-want to notify the person concerned that their details have been
-modified but we do not want to do this during the handling of the
-form submission. So we store the reminder to notify here, and send
-it later in a batch. This is modelled on the pattern of
-BugNotification.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.personnotification Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The Person who has been edited or modified.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_emailed</td>
-<td>timestamp without time zone</td>
-<td><br />
-<br />
-When this notification was emailed to the relevant people.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>body</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The textual body of the notification to be sent.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>subject</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The subject of the mail to be sent.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-personnotification__date_emailed__idx date_emailed
-personnotification__person__idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.pillarname" id=
-"public.table.pillarname">pillarname</a></h2>
-<p>A cache of the names of our "Pillar's" (distribution, product,
-project) to ensure uniqueness in this shared namespace. This is a
-materialized view maintained by database triggers.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pillarname Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.product">public.product.id</a></td>
-<td>product</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.project">public.project.id</a></td>
-<td>project</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distribution">public.distribution.id</a></td>
-<td>distribution</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.pillarname">public.pillarname.id</a></td>
-<td>alias_for</td>
-<td>integer</td>
-<td><br />
-<br />
-An alias for another pillarname. Rows with this column set are not
-maintained by triggers.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pillarname Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>only_one_target</td>
-<td>CHECK ((null_count(ARRAY[product, project, distribution,
-alias_for]) = 3))</td>
-</tr>
-<tr class="tr1">
-<td>valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.featuredproject">public.featuredproject</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pillarname">public.pillarname</a></li>
-</ul>
-<!-- Indexes -->
-pillarname__alias_for__idx alias_for) WHERE (alias_for IS NOT NULL 
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.pocketchroot" id=
-"public.table.pocketchroot">pocketchroot</a></h2>
-<p>PocketChroots: Which chroot belongs to which pocket of which
-distroarchseries. Any given pocket of any given distroarchseries
-needs a specific chroot in order to be built. This table links it
-all together.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pocketchroot Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.distroarchseries">public.distroarchseries.id</a></td>
-<td>distroarchseries</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i><br />
-<br />
-Which distroarchseries this chroot applies to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>pocket</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-Which pocket of the distroarchseries this chroot applies to. Valid
-values are specified in dbschema.PackagePublishingPocket</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>chroot</td>
-<td>integer</td>
-<td><br />
-<br />
-The chroot used by the pocket of the distroarchseries.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.pocomment" id=
-"public.table.pocomment">pocomment</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pocomment Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.potemplate">public.potemplate.id</a></td>
-<td>potemplate</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.pomsgid">public.pomsgid.id</a></td>
-<td>pomsgid</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.potranslation">public.potranslation.id</a></td>
-<td>potranslation</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>commenttext</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-pocomment_person_idx person <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.poexportrequest" id=
-"public.table.poexportrequest">poexportrequest</a></h2>
-<p>A request from a user that a PO template or a PO file be
-exported asynchronously.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.poexportrequest Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The person who made the request.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.potemplate">public.potemplate.id</a></td>
-<td>potemplate</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The PO template being requested.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.pofile">public.pofile.id</a></td>
-<td>pofile</td>
-<td>integer</td>
-<td><br />
-<br />
-The PO file being requested, or NULL.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>format</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The format the user would like the export to be in. See the
-RosettaFileFormat DB schema for possible values.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.pofile" id="public.table.pofile">pofile</a></h2>
-<p>This table stores a PO file for a given PO template.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pofile Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.potemplate">public.potemplate.id</a></td>
-<td>potemplate</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>topcomment</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>header</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>fuzzyheader</td>
-<td>boolean</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>lasttranslator</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>currentcount</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>updatescount</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>rosettacount</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lastparsed</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>variant</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>path</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The path (included the filename) inside the tree from where the
-content was imported.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>from_sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The sourcepackagename from where the last .po file came (only if
-it's different from POFile.potemplate.sourcepackagename)</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>unreviewed_count</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Number of POTMsgSets with new, unreviewed TranslationMessages for
-this POFile.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_changed</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pofile Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>valid_variant</td>
-<td>CHECK ((variant &lt;&gt; ''::text))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.poexportrequest">public.poexportrequest</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.pofiletranslator">public.pofiletranslator</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationimportqueueentry">public.translationimportqueueentry</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationmessage">public.translationmessage</a></li>
-</ul>
-<!-- Indexes -->
-pofile_datecreated_idx datecreated pofile_language_idx language
-pofile_lasttranslator_idx lasttranslator pofile_owner_idx owner
-pofile_variant_idx variant <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.pofiletranslator" id=
-"public.table.pofiletranslator">pofiletranslator</a></h2>
-<p>A materialized view caching who has translated what pofile.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pofiletranslator Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The person who submitted the translation.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.pofile">public.pofile.id</a></td>
-<td>pofile</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The pofile the translation was submitted for.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.translationmessage">public.translationmessage.id</a></td>
-<td>latest_message</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-Latest translation message added to the translation file.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_last_touched</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i><br />
-<br />
-When was added latest translation message.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-pofiletranslator__date_last_touched__idx date_last_touched
-pofiletranslator__latest_message__idx latest_message
-pofiletranslator__pofile__idx pofile <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.poll" id="public.table.poll">poll</a></h2>
-<p>The polls belonging to teams.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.poll Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>team</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The team this poll belongs to</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The unique name of this poll.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The title of this poll.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>dateopens</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-The date and time when this poll opens.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>datecloses</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL</i><br />
-<br />
-The date and time when this poll closes.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>proposition</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The proposition that is going to be voted.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>type</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The type of this poll (Simple, Preferential, etc).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>allowspoilt</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i><br />
-<br />
-If people can spoil their votes.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>secrecy</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-If people votes are SECRET (no one can see), ADMIN (team
-administrators can see) or PUBLIC (everyone can see).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.poll Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>sane_dates</td>
-<td>CHECK ((dateopens &lt; datecloses))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.polloption">public.polloption</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.vote">public.vote</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.votecast">public.votecast</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.polloption" id=
-"public.table.polloption">polloption</a></h2>
-<p>The options belonging to polls.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.polloption Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY UNIQUE#2</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.poll">public.poll.id</a></td>
-<td>poll</td>
-<td>integer</td>
-<td><i>UNIQUE#1 UNIQUE#2 NOT NULL</i><br />
-<br />
-The poll this options belongs to.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE#1 NOT NULL</i><br />
-<br />
-The name of this option.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-A short title for this option.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>active</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT true</i><br />
-<br />
-If TRUE, people will be able to vote on this option. Otherwise they
-don't.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.vote">public.vote</a></li>
-</ul>
-<!-- Indexes -->
-polloption_poll_idx poll <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.pomsgid" id="public.table.pomsgid">pomsgid</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.pomsgid Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>msgid</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.pocomment">public.pocomment</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.potmsgset">public.potmsgset</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.posubscription" id=
-"public.table.posubscription">posubscription</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.posubscription Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>person</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.potemplate">public.potemplate.id</a></td>
-<td>potemplate</td>
-<td>integer</td>
-<td><i>UNIQUE#1 NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.language">public.language.id</a></td>
-<td>language</td>
-<td>integer</td>
-<td><i>UNIQUE#1</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>notificationinterval</td>
-<td>interval</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>lastnotified</td>
-<td>timestamp without time zone</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>date_created</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.potemplate" id=
-"public.table.potemplate">potemplate</a></h2>
-<p>This table stores a pot file for a given product.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.potemplate Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>priority</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>copyright</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>datecreated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text,
-('now'::text)::timestamp(6) with time zone)</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>path</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The path to the .pot source file inside the tarball tree, including
-the filename.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>iscurrent</td>
-<td>boolean</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>messagecount</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.person">public.person.id</a></td>
-<td>owner</td>
-<td>integer</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-A reference to a sourcepackage name from where this POTemplate
-comes.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.distroseries">public.distroseries.id</a></td>
-<td>distroseries</td>
-<td>integer</td>
-<td><br />
-<br />
-A reference to the distribution from where this POTemplate
-comes.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sourcepackageversion</td>
-<td>text</td>
-<td><br />
-<br />
-The sourcepackage version string from where this potemplate was
-imported last time with our buildd &lt;-&gt; Rosetta gateway.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>header</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The header of a .pot file when we import it. Most important info
-from it is POT-Creation-Date and custom headers.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.binarypackagename">public.binarypackagename.id</a></td>
-<td>binarypackagename</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>languagepack</td>
-<td>boolean</td>
-<td><i>NOT NULL DEFAULT false</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.productseries">public.productseries.id</a></td>
-<td>productseries</td>
-<td>integer</td>
-<td><br />
-<br />
-A reference to a ProductSeries from where this POTemplate
-comes.</td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.sourcepackagename">public.sourcepackagename.id</a></td>
-<td>from_sourcepackagename</td>
-<td>integer</td>
-<td><br />
-<br />
-The sourcepackagename from where the last .pot file came (only if
-it's different from POTemplate.sourcepackagename)</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>date_last_updated</td>
-<td>timestamp without time zone</td>
-<td><i>NOT NULL DEFAULT timezone('UTC'::text, now())</i></td>
-</tr>
-<tr class="tr0">
-<td><a href=
-"#public.table.libraryfilealias">public.libraryfilealias.id</a></td>
-<td>source_file</td>
-<td>integer</td>
-<td><br />
-<br />
-Reference to Librarian file storing the last uploaded template
-file.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>source_file_format</td>
-<td>integer</td>
-<td><i>NOT NULL DEFAULT 1</i><br />
-<br />
-File format for the Librarian file referenced in "source_file"
-column.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The name of the POTemplate set. It must be unique</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>translation_domain</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The translation domain for this POTemplate</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<p>&nbsp;</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.potemplate Constraints</caption>
-<tr>
-<th>Name</th>
-<th>Constraint</th>
-</tr>
-<tr class="tr0">
-<td>potemplate_valid_name</td>
-<td>CHECK (valid_name(name))</td>
-</tr>
-<tr class="tr1">
-<td>valid_from_sourcepackagename</td>
-<td>CHECK (((sourcepackagename IS NOT NULL) OR
-(from_sourcepackagename IS NULL)))</td>
-</tr>
-<tr class="tr0">
-<td>valid_link</td>
-<td>CHECK ((((productseries IS NULL) &lt;&gt; (distroseries IS
-NULL)) AND ((distroseries IS NULL) = (sourcepackagename IS
-NULL))))</td>
-</tr>
-</table>
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.pocomment">public.pocomment</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.poexportrequest">public.poexportrequest</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.pofile">public.pofile</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.posubscription">public.posubscription</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.potmsgset">public.potmsgset</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationimportqueueentry">public.translationimportqueueentry</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationmessage">public.translationmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationtemplateitem">public.translationtemplateitem</a></li>
-</ul>
-<!-- Indexes -->
-potemplate__date_last_updated__idx date_last_updated
-potemplate__name__idx name potemplate__source_file__idx
-source_file) WHERE (source_file IS NOT NULL
-potemplate_languagepack_idx languagepack potemplate_owner_idx owner
-<!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>View: <a href="#public.schema">public</a>.<a name=
-"public.view.potexport" id=
-"public.view.potexport">potexport</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.potexport Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>productseries</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sourcepackagename</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>distroseries</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>potemplate</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>template_header</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>languagepack</td>
-<td>boolean</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>sequence</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>potmsgset</td>
-<td>integer</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>comment</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>source_comment</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>file_references</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>flags_comment</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>context</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>msgid_singular</td>
-<td>text</td>
-<td></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>msgid_plural</td>
-<td>text</td>
-<td></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<!-- Indexes -->
-<!-- View Definition -->
-<pre>
-SELECT COALESCE
-(
-     (potmsgset.id)::text
-     ,'X'::text
-) AS id
-, potemplate.productseries
-, potemplate.sourcepackagename
-, potemplate.distroseries
-, potemplate.id AS potemplate
-, potemplate.header AS template_header
-, potemplate.languagepack
-, translationtemplateitem.sequence
-, potmsgset.id AS potmsgset
-, potmsgset.commenttext AS comment
-, potmsgset.sourcecomment AS source_comment
-, potmsgset.filereferences AS file_references
-, potmsgset.flagscomment AS flags_comment
-, potmsgset.context
-, msgid_singular.msgid AS msgid_singular
-, msgid_plural.msgid AS msgid_plural 
-FROM (
-     (
-           (
-                 (potmsgset 
-                    JOIN translationtemplateitem 
-                      ON (
-                             (translationtemplateitem.potmsgset = potmsgset.id)
-                       )
-                 )
-              JOIN potemplate 
-                ON (
-                       (potemplate.id = translationtemplateitem.potemplate)
-                 )
-           )
-   LEFT JOIN pomsgid msgid_singular 
-          ON (
-                 (potmsgset.msgid_singular = msgid_singular.id)
-           )
-     )
-LEFT JOIN pomsgid msgid_plural 
-    ON (
-           (potmsgset.msgid_plural = msgid_plural.id)
-     )
-);
-</pre>
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.potmsgset" id=
-"public.table.potmsgset">potmsgset</a></h2>
-<p>This table is stores a collection of msgids without their
-translations and all kind of information associated to that set of
-messages that could be found in a potemplate file.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.potmsgset Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.pomsgid">public.pomsgid.id</a></td>
-<td>msgid_singular</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The singular msgid for this message.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sequence</td>
-<td>integer</td>
-<td><br />
-<br />
-The position of this message set inside the potemplate.</td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.potemplate">public.potemplate.id</a></td>
-<td>potemplate</td>
-<td>integer</td>
-<td><br />
-<br />
-The potemplate where this message set is stored.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>commenttext</td>
-<td>text</td>
-<td><br />
-<br />
-The comment text that is associated to this message set.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>filereferences</td>
-<td>text</td>
-<td><br />
-<br />
-The list of files and their line number where this message set was
-extracted from.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>sourcecomment</td>
-<td>text</td>
-<td><br />
-<br />
-The comment that was extracted from the source code.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>flagscomment</td>
-<td>text</td>
-<td><br />
-<br />
-The flags associated with this set (like c-format).</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>context</td>
-<td>text</td>
-<td><br />
-<br />
-Context uniquely defining a message when there are messages with
-same primemsgids.</td>
-</tr>
-<tr class="tr1">
-<td><a href="#public.table.pomsgid">public.pomsgid.id</a></td>
-<td>msgid_plural</td>
-<td>integer</td>
-<td><br />
-<br />
-The plural msgid for this message.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.translationmessage">public.translationmessage</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationtemplateitem">public.translationtemplateitem</a></li>
-</ul>
-<!-- Indexes -->
-potmsgset__context__msgid_singular__msgid_plural__idx context,
-msgid_singular, msgid_plural) WHERE ((context IS NOT NULL) AND
-(msgid_plural IS NOT NULL)
-potmsgset__context__msgid_singular__no_msgid_plural__idx context,
-msgid_singular) WHERE ((context IS NOT NULL) AND (msgid_plural IS
-NULL) potmsgset__no_context__msgid_singular__msgid_plural__idx
-msgid_singular, msgid_plural) WHERE ((context IS NULL) AND
-(msgid_plural IS NOT NULL)
-potmsgset__no_context__msgid_singular__no_msgid_plural__idx
-msgid_singular) WHERE ((context IS NULL) AND (msgid_plural IS NULL)
-potmsgset_primemsgid_idx msgid_singular potmsgset_sequence_idx
-sequence <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.potranslation" id=
-"public.table.potranslation">potranslation</a></h2>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.potranslation Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>translation</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.pocomment">public.pocomment</a></li>
-</ul>
-<ul>
-<li><a href=
-"#public.table.translationmessage">public.translationmessage</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.previewdiff" id=
-"public.table.previewdiff">previewdiff</a></h2>
-<p>Contains information about preview diffs, without duplicating
-information with BranchMergeProposal.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.previewdiff Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>source_revision_id</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The source branch revision_id used to generate this diff.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>target_revision_id</td>
-<td>text</td>
-<td><i>NOT NULL</i><br />
-<br />
-The target branch revision_id used to generate this diff.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>dependent_revision_id</td>
-<td>text</td>
-<td><br />
-<br />
-The dependant branch revision_id used to generate this diff.</td>
-</tr>
-<tr class="tr0">
-<td><a href="#public.table.diff">public.diff.id</a></td>
-<td>diff</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The last Diff generated for this PreviewDiff.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>conflicts</td>
-<td>text</td>
-<td><br />
-<br />
-The text description of any conflicts present.</td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href=
-"#public.table.branchmergeproposal">public.branchmergeproposal</a></li>
-</ul>
-<!-- Indexes -->
-previewdiff__diff__idx diff <!-- View Definition -->
- <!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.processor" id=
-"public.table.processor">processor</a></h2>
-<p>A single processor for which code might be compiled. For
-example, i386, P2, P3, P4, Itanium1, Itanium2... each processor
-belongs to a ProcessorFamily, and it might be that a package is
-compiled several times for a given Family, with different
-optimisation settings for each processor.</p>
-<table width="100%" cellspacing="0" cellpadding="3">
-<caption>public.processor Structure</caption>
-<tr>
-<th>F-Key</th>
-<th>Name</th>
-<th>Type</th>
-<th>Description</th>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>id</td>
-<td>serial</td>
-<td><i>PRIMARY KEY</i></td>
-</tr>
-<tr class="tr1">
-<td><a href=
-"#public.table.processorfamily">public.processorfamily.id</a></td>
-<td>family</td>
-<td>integer</td>
-<td><i>NOT NULL</i><br />
-<br />
-The ProcessorFamily for this Processor.</td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>name</td>
-<td>text</td>
-<td><i>UNIQUE NOT NULL</i><br />
-<br />
-The name of this processor, for example, i386, Pentium, P2, P3, P4,
-Itanium, Itanium2, K7, Athlon, Opteron... it should be short and
-unique.</td>
-</tr>
-<tr class="tr1">
-<td></td>
-<td>title</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-<tr class="tr0">
-<td></td>
-<td>description</td>
-<td>text</td>
-<td><i>NOT NULL</i></td>
-</tr>
-</table>
-<!-- Inherits -->
-<!-- Constraint List -->
-<!-- Foreign Key Discovery -->
-<p>Tables referencing this one via Foreign Key Constraints:</p>
-<ul>
-<li><a href="#public.table.build">public.build</a></li>
-</ul>
-<ul>
-<li><a href="#public.table.builder">public.builder</a></li>
-</ul>
-<!-- Indexes -->
-<!-- View Definition -->
-<!-- List off permissions -->
-<p><a href="#index">Index</a> - <a href="#public.schema">Schema
-public</a></p>
-<hr />
-<h2>Table: <a href="#public.schema">public</a>.<a name=
-"public.table.proc

Follow ups