Merge lp:~wgrant/launchpad/destroy-distroseries-lucilleconfig into lp:launchpad

Proposed by William Grant
Status: Merged
Approved by: Jelmer Vernooij
Approved revision: no longer in the source branch.
Merged at revision: 11879
Proposed branch: lp:~wgrant/launchpad/destroy-distroseries-lucilleconfig
Merge into: lp:launchpad
Prerequisite: lp:~wgrant/launchpad/more-a-f-cleanup
Diff against target: 1180 lines (+437/-326)
14 files modified
database/sampledata/current-dev.sql (+168/-119)
database/sampledata/current.sql (+154/-119)
lib/lp/archivepublisher/config.py (+1/-22)
lib/lp/archivepublisher/ftparchive.py (+11/-4)
lib/lp/archivepublisher/publishing.py (+7/-8)
lib/lp/archivepublisher/tests/publisher-config.txt (+13/-43)
lib/lp/archivepublisher/tests/test_config.py (+0/-10)
lib/lp/registry/interfaces/distroseries.py (+3/-0)
lib/lp/registry/model/distroseries.py (+9/-0)
lib/lp/soyuz/doc/archive.txt (+4/-0)
lib/lp/soyuz/doc/distroarchseries.txt (+11/-0)
lib/lp/soyuz/interfaces/archive.py (+8/-0)
lib/lp/soyuz/model/archive.py (+12/-1)
lib/lp/soyuz/tests/test_archive.py (+36/-0)
To merge this branch: bzr merge lp:~wgrant/launchpad/destroy-distroseries-lucilleconfig
Reviewer Review Type Date Requested Status
Jelmer Vernooij (community) code Approve
Review via email: mp+38648@code.launchpad.net

Commit message

Calculate a distroseries' architectures and components directly from the DB, not via lucilleconfig.

Description of the change

Once upon a time, during the initial implementation of Soyuz, somebody did this:

class Config(object):
    """Manage a publisher configuration from the database. (Read Only)
    This class provides a useful abstraction so that if we change
    how the database stores configuration then the publisher will not
    need to be re-coded to cope"""

This has made a lot of people very angry and been widely regarded as a bad move. But it is ingrained enough that it persists to this day.

This is the first of a few branches to remove the dreaded lucilleconfig, an ini file stored as text in the database. Here I remove its archTagsForSeries and componentsForSeries methods, replacing them with less insane model calls.

== Implementation details ==

I've added (I)DistroSeries.enabled_architectures to allow easy retrieval of the publishable architectures. Former archTagsForSeries callsites now extract archtags from there. I realise that there is some nasty duplication there, but that can't be easily removed without a refactoring that will come later in the series.

componentsForSeries is replaced by (I)Archive.getComponentsForSeries. The new method returns the 'partner' component for PARTNER archives, and uses ComponentSelection for all other archives. This necessitated a sampledata change, as one of the test series has no ComponentSelections.

These two changes render DistroSeries.lucilleconfig obsolete, but the branch is already big enough so I'll remove it later.

To post a comment you must log in.
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Looks good, thanks for working on this.

Did you have a pre-implementation call with anybody about this?

Just one minor comment - can you clarify the comment on enabled_architectures to say more than just that it contains the enabled architectures? As we had a property earlier with the same name but different contents I think that would help prevent some potential confusion.

Do you need me to land this branch?

review: Approve (code)
Revision history for this message
William Grant (wgrant) wrote :

Thanks for the review, Jelmer.

> Looks good, thanks for working on this.
>
> Did you have a pre-implementation call with anybody about this?

Julian emphatically supports the lucilleconfig elimination attempt, but I didn't discuss the approach with anyone, as it was straightforward enough.

> Just one minor comment - can you clarify the comment on enabled_architectures
> to say more than just that it contains the enabled architectures? As we had a
> property earlier with the same name but different contents I think that would
> help prevent some potential confusion.

I'd considered it. Done.

> Do you need me to land this branch?

That would be great.

Thanks.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'database/sampledata/current-dev.sql'
2--- database/sampledata/current-dev.sql 2010-10-07 22:46:08 +0000
3+++ database/sampledata/current-dev.sql 2010-11-02 21:51:48 +0000
4@@ -1,6 +1,6 @@
5 -- Copyright 2010 Canonical Ltd. This software is licensed under the
6 -- GNU Affero General Public License version 3 (see the file LICENSE).
7--- Created using pg_dump (PostgreSQL) 8.4.4
8+-- Created using pg_dump (PostgreSQL) 8.4.5
9
10 SET check_function_bodies = false;
11 SET client_encoding = 'UTF8';
12@@ -810,6 +810,27 @@
13
14
15
16+
17+
18+
19+
20+
21+
22+
23+
24+
25+
26+
27+
28+
29+
30+
31+
32+
33+
34+
35+
36+
37 SET SESSION AUTHORIZATION DEFAULT;
38
39 ALTER TABLE account DISABLE TRIGGER ALL;
40@@ -3333,42 +3354,42 @@
41
42 ALTER TABLE bugmessage DISABLE TRIGGER ALL;
43
44-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (1, 2, 1, NULL, NULL, true);
45-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (2, 1, 3, NULL, NULL, true);
46-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (3, 1, 4, NULL, NULL, true);
47-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (4, 2, 5, NULL, NULL, true);
48-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (5, 2, 6, NULL, NULL, true);
49-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (6, 4, 7, NULL, NULL, true);
50-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (7, 5, 8, NULL, NULL, true);
51-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (8, 6, 9, NULL, NULL, true);
52-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (9, 3, 10, NULL, NULL, true);
53-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (10, 7, 11, NULL, NULL, true);
54-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (11, 8, 14, NULL, NULL, true);
55-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (12, 9, 15, NULL, NULL, true);
56-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (13, 10, 17, NULL, NULL, true);
57-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (14, 10, 16, NULL, NULL, true);
58-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (15, 11, 24, NULL, NULL, true);
59-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (16, 11, 25, NULL, NULL, true);
60-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (17, 11, 26, NULL, NULL, true);
61-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (18, 11, 27, NULL, NULL, true);
62-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (19, 11, 28, NULL, NULL, true);
63-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (20, 11, 29, NULL, NULL, true);
64-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (21, 11, 30, NULL, NULL, true);
65-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (22, 12, 31, NULL, NULL, true);
66-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (23, 12, 33, NULL, NULL, true);
67-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (24, 12, 34, NULL, NULL, true);
68-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (25, 12, 35, NULL, NULL, true);
69-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (26, 12, 36, NULL, NULL, true);
70-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (27, 13, 37, NULL, NULL, true);
71-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (28, 13, 38, NULL, NULL, true);
72-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (29, 14, 39, NULL, NULL, true);
73-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (30, 15, 40, NULL, NULL, true);
74-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (31, 15, 44, 11, '<4284D7D1.6010208@gmx.de>', true);
75-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (32, 15, 45, 11, '<20050517185429.GB20786@spring.luon.net>', true);
76-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (33, 15, 46, 11, '<428A44E9.6090802@gmx.de>', true);
77-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (34, 15, 47, 11, '<20050517202044.GA23231@spring.luon.net>', true);
78-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (35, 15, 48, 11, '<20050617140011.GA15638@piware.de>', true);
79-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (36, 15, 49, 11, '<42BD2E36.9090809@gmx.de>', true);
80+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (1, 2, 1, NULL, NULL, true, NULL);
81+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (2, 1, 3, NULL, NULL, true, NULL);
82+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (3, 1, 4, NULL, NULL, true, NULL);
83+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (4, 2, 5, NULL, NULL, true, NULL);
84+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (5, 2, 6, NULL, NULL, true, NULL);
85+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (6, 4, 7, NULL, NULL, true, NULL);
86+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (7, 5, 8, NULL, NULL, true, NULL);
87+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (8, 6, 9, NULL, NULL, true, NULL);
88+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (9, 3, 10, NULL, NULL, true, NULL);
89+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (10, 7, 11, NULL, NULL, true, NULL);
90+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (11, 8, 14, NULL, NULL, true, NULL);
91+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (12, 9, 15, NULL, NULL, true, NULL);
92+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (13, 10, 17, NULL, NULL, true, NULL);
93+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (14, 10, 16, NULL, NULL, true, NULL);
94+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (15, 11, 24, NULL, NULL, true, NULL);
95+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (16, 11, 25, NULL, NULL, true, NULL);
96+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (17, 11, 26, NULL, NULL, true, NULL);
97+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (18, 11, 27, NULL, NULL, true, NULL);
98+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (19, 11, 28, NULL, NULL, true, NULL);
99+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (20, 11, 29, NULL, NULL, true, NULL);
100+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (21, 11, 30, NULL, NULL, true, NULL);
101+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (22, 12, 31, NULL, NULL, true, NULL);
102+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (23, 12, 33, NULL, NULL, true, NULL);
103+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (24, 12, 34, NULL, NULL, true, NULL);
104+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (25, 12, 35, NULL, NULL, true, NULL);
105+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (26, 12, 36, NULL, NULL, true, NULL);
106+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (27, 13, 37, NULL, NULL, true, NULL);
107+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (28, 13, 38, NULL, NULL, true, NULL);
108+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (29, 14, 39, NULL, NULL, true, NULL);
109+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (30, 15, 40, NULL, NULL, true, NULL);
110+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (31, 15, 44, 11, '<4284D7D1.6010208@gmx.de>', true, NULL);
111+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (32, 15, 45, 11, '<20050517185429.GB20786@spring.luon.net>', true, NULL);
112+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (33, 15, 46, 11, '<428A44E9.6090802@gmx.de>', true, NULL);
113+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (34, 15, 47, 11, '<20050517202044.GA23231@spring.luon.net>', true, NULL);
114+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (35, 15, 48, 11, '<20050617140011.GA15638@piware.de>', true, NULL);
115+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (36, 15, 49, 11, '<42BD2E36.9090809@gmx.de>', true, NULL);
116
117
118 ALTER TABLE bugmessage ENABLE TRIGGER ALL;
119@@ -3799,13 +3820,6 @@
120 ALTER TABLE bugtrackercomponentgroup ENABLE TRIGGER ALL;
121
122
123-ALTER TABLE distributionsourcepackage DISABLE TRIGGER ALL;
124-
125-
126-
127-ALTER TABLE distributionsourcepackage ENABLE TRIGGER ALL;
128-
129-
130 ALTER TABLE bugtrackercomponent DISABLE TRIGGER ALL;
131
132
133@@ -4014,6 +4028,13 @@
134 ALTER TABLE distributionbounty ENABLE TRIGGER ALL;
135
136
137+ALTER TABLE distributionjob DISABLE TRIGGER ALL;
138+
139+
140+
141+ALTER TABLE distributionjob ENABLE TRIGGER ALL;
142+
143+
144 ALTER TABLE distributionmirror DISABLE TRIGGER ALL;
145
146 INSERT INTO distributionmirror (id, distribution, name, http_base_url, ftp_base_url, rsync_base_url, displayname, description, owner, speed, country, content, official_candidate, enabled, date_created, whiteboard, status, date_reviewed, reviewer, country_dns_mirror) VALUES (1, 1, 'archive-mirror', 'http://localhost:11375/valid-mirror/', NULL, NULL, NULL, NULL, 1, 10, 75, 1, true, true, '2006-10-16 18:31:43.434567', NULL, 30, NULL, NULL, false);
147@@ -4031,6 +4052,13 @@
148 ALTER TABLE distributionmirror ENABLE TRIGGER ALL;
149
150
151+ALTER TABLE distributionsourcepackage DISABLE TRIGGER ALL;
152+
153+
154+
155+ALTER TABLE distributionsourcepackage ENABLE TRIGGER ALL;
156+
157+
158 ALTER TABLE distributionsourcepackagecache DISABLE TRIGGER ALL;
159
160 INSERT INTO distributionsourcepackagecache (id, distribution, sourcepackagename, name, binpkgnames, binpkgsummaries, binpkgdescriptions, fti, changelog, archive) VALUES (1, 3, 19, 'alsa-utils', '', '', '', NULL, NULL, 1);
161@@ -4990,6 +5018,81 @@
162 ALTER TABLE lp_account ENABLE TRIGGER ALL;
163
164
165+ALTER TABLE lp_openididentifier DISABLE TRIGGER ALL;
166+
167+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6KHNEe3', 2436141, '2007-12-18 16:31:34.790641');
168+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6w7kmzC', 2436091, '2007-12-07 13:43:20.393704');
169+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('CALDpFr', 2436171, '2008-03-06 09:55:27.289842');
170+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('GMX7shE', 2436242, '2009-03-17 07:26:14.024613');
171+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('MGWJnTL', 2436111, '2007-12-14 16:52:15.403833');
172+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('R8FpwXd', 2436161, '2007-12-18 16:31:34.790641');
173+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('WQPMHdf', 2436081, '2007-11-12 15:23:19.847132');
174+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('andrelop_oid', 431, '2005-06-06 08:59:51.561685');
175+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('barbier_oid', 421, '2005-06-06 08:59:51.560604');
176+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-importer_oid', 581, '2005-12-06 09:48:58.287679');
177+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-watch-updater_oid', 621, '2006-05-23 12:49:30.483464');
178+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cCGE3LA', 2436101, '2007-12-14 16:52:15.403833');
179+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cF4PNk3', 2436241, '2008-11-04 12:59:26.965843');
180+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('callipeo_oid', 401, '2005-06-06 08:59:51.558429');
181+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('carlos_oid', 131, '2005-06-06 08:59:51.615543');
182+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cprov_oid', 281, '2005-06-06 08:59:51.59705');
183+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('daf_oid', 141, '2005-06-06 08:59:51.616666');
184+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('danner_oid', 371, '2005-06-06 08:59:51.549651');
185+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('ddaa_oid', 231, '2005-06-06 08:59:51.620823');
186+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('debonzi_oid', 271, '2005-06-06 08:59:51.557224');
187+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('edgar_oid', 331, '2005-06-06 08:59:51.621892');
188+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('former-user_oid', 701, '2006-12-13 21:19:06.369142');
189+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jblack_oid', 81, '2005-06-06 08:59:51.601584');
190+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jdub_oid', 61, '2005-06-06 08:59:51.600523');
191+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jordi_oid', 561, '2005-10-07 14:17:51.593849');
192+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jorge-gonzalez-gonzalez_oid', 411, '2005-06-06 08:59:51.559519');
193+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('justdave_oid', 31, '2005-06-06 08:59:51.610048');
194+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jvprat_oid', 341, '2005-06-06 08:59:51.622908');
195+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kYFxQYP', 2436243, '2009-08-04 10:50:39.383407');
196+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kamion_oid', 41, '2005-06-06 08:59:51.611185');
197+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('karl_oid', 631, '2006-05-23 12:49:30.483464');
198+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kebil_oid', 491, '2005-06-06 08:59:51.568323');
199+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('keybuk_oid', 51, '2005-06-06 08:59:51.608802');
200+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kiko_oid', 91, '2005-06-06 08:59:51.594941');
201+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kinnison_oid', 261, '2005-06-06 08:59:51.618722');
202+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kreutzm_oid', 511, '2005-06-06 08:59:51.570701');
203+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kurem_oid', 461, '2005-06-06 08:59:51.565033');
204+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-beta-owner_oid', 681, '2007-01-31 06:56:25.096519');
205+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-janitor_oid', 651, '2006-10-04 16:20:51.19954');
206+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('lifeless_oid', 21, '2005-06-06 08:59:51.598107');
207+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('limi_oid', 101, '2005-06-06 08:59:51.619713');
208+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('luk-claes_oid', 451, '2005-06-06 08:59:51.563952');
209+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mTmeENb', 2436231, '2008-06-27 14:49:11.149508');
210+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('marilize_oid', 551, '2005-06-06 08:59:51.593849');
211+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mark_oid', 11, '2005-06-06 08:59:51.591618');
212+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('martin-pitt_oid', 381, '2005-06-06 08:59:51.555051');
213+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('matsubara_oid', 661, '2006-12-13 21:19:06.369142');
214+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('morten_oid', 471, '2005-06-06 08:59:51.56614');
215+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mpo_oid', 481, '2005-06-06 08:59:51.567224');
216+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name12_oid', 121, '2005-06-06 08:59:51.612277');
217+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name16_oid', 161, '2005-06-06 08:59:51.593849');
218+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('neMCQNd', 2436061, '2007-08-09 21:25:37.832976');
219+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-priv_oid', 521, '2005-06-06 08:59:51.593849');
220+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-team-memberships_oid', 2436021, '2007-02-19 11:17:57.755666');
221+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('nsv_oid', 391, '2005-06-06 08:59:51.556132');
222+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('one-membership_oid', 2436031, '2007-02-21 10:53:59.700105');
223+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('rPwGRk4', 2436221, '2008-05-12 17:38:38.798696');
224+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('salgado_oid', 291, '2005-06-06 08:59:51.596025');
225+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('sigurd-ubuntu_oid', 351, '2005-06-06 08:59:51.623962');
226+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('skacel_oid', 361, '2005-06-06 08:59:51.5244');
227+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('spiv_oid', 71, '2005-06-06 08:59:51.551196');
228+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stevea_oid', 111, '2005-06-06 08:59:51.599234');
229+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stub_oid', 221, '2005-06-06 08:59:51.59276');
230+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('team-membership-janitor_oid', 671, '2006-10-04 16:20:51.19954');
231+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('tsukimi_oid', 501, '2005-06-06 08:59:51.569518');
232+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('valyag_oid', 441, '2005-06-06 08:59:51.562857');
233+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('yEzBPbd', 2436151, '2007-12-18 16:31:34.790641');
234+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('zRtPxw8', 243637, '2010-07-12 09:48:27.198885');
235+
236+
237+ALTER TABLE lp_openididentifier ENABLE TRIGGER ALL;
238+
239+
240 ALTER TABLE lp_person DISABLE TRIGGER ALL;
241
242 INSERT INTO lp_person (id, displayname, teamowner, teamdescription, name, language, fti, defaultmembershipperiod, defaultrenewalperiod, subscriptionpolicy, merged, datecreated, addressline1, addressline2, organization, city, province, country, postcode, phone, homepage_content, icon, mugshot, hide_email_addresses, creation_rationale, creation_comment, registrant, logo, renewal_policy, personal_standing, personal_standing_reason, mail_resumption_date, mailing_list_auto_subscribe_policy, mailing_list_receive_duplicates, visibility, verbose_bugnotifications, account) VALUES (1, 'Mark Shuttleworth', NULL, NULL, 'mark', NULL, NULL, NULL, NULL, 1, NULL, '2005-06-06 08:59:51.591618', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, 8, NULL, NULL, NULL, 10, 0, NULL, NULL, 1, true, 1, false, 11);
243@@ -5096,81 +5199,6 @@
244 ALTER TABLE lp_person ENABLE TRIGGER ALL;
245
246
247-ALTER TABLE lp_openididentifier DISABLE TRIGGER ALL;
248-
249-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6KHNEe3', 2436141, '2007-12-18 16:31:34.790641');
250-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6w7kmzC', 2436091, '2007-12-07 13:43:20.393704');
251-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('CALDpFr', 2436171, '2008-03-06 09:55:27.289842');
252-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('GMX7shE', 2436242, '2009-03-17 07:26:14.024613');
253-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('MGWJnTL', 2436111, '2007-12-14 16:52:15.403833');
254-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('R8FpwXd', 2436161, '2007-12-18 16:31:34.790641');
255-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('WQPMHdf', 2436081, '2007-11-12 15:23:19.847132');
256-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('andrelop_oid', 431, '2005-06-06 08:59:51.561685');
257-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('barbier_oid', 421, '2005-06-06 08:59:51.560604');
258-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-importer_oid', 581, '2005-12-06 09:48:58.287679');
259-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-watch-updater_oid', 621, '2006-05-23 12:49:30.483464');
260-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cCGE3LA', 2436101, '2007-12-14 16:52:15.403833');
261-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cF4PNk3', 2436241, '2008-11-04 12:59:26.965843');
262-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('callipeo_oid', 401, '2005-06-06 08:59:51.558429');
263-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('carlos_oid', 131, '2005-06-06 08:59:51.615543');
264-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cprov_oid', 281, '2005-06-06 08:59:51.59705');
265-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('daf_oid', 141, '2005-06-06 08:59:51.616666');
266-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('danner_oid', 371, '2005-06-06 08:59:51.549651');
267-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('ddaa_oid', 231, '2005-06-06 08:59:51.620823');
268-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('debonzi_oid', 271, '2005-06-06 08:59:51.557224');
269-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('edgar_oid', 331, '2005-06-06 08:59:51.621892');
270-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('former-user_oid', 701, '2006-12-13 21:19:06.369142');
271-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jblack_oid', 81, '2005-06-06 08:59:51.601584');
272-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jdub_oid', 61, '2005-06-06 08:59:51.600523');
273-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jordi_oid', 561, '2005-10-07 14:17:51.593849');
274-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jorge-gonzalez-gonzalez_oid', 411, '2005-06-06 08:59:51.559519');
275-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('justdave_oid', 31, '2005-06-06 08:59:51.610048');
276-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jvprat_oid', 341, '2005-06-06 08:59:51.622908');
277-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kYFxQYP', 2436243, '2009-08-04 10:50:39.383407');
278-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kamion_oid', 41, '2005-06-06 08:59:51.611185');
279-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('karl_oid', 631, '2006-05-23 12:49:30.483464');
280-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kebil_oid', 491, '2005-06-06 08:59:51.568323');
281-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('keybuk_oid', 51, '2005-06-06 08:59:51.608802');
282-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kiko_oid', 91, '2005-06-06 08:59:51.594941');
283-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kinnison_oid', 261, '2005-06-06 08:59:51.618722');
284-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kreutzm_oid', 511, '2005-06-06 08:59:51.570701');
285-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kurem_oid', 461, '2005-06-06 08:59:51.565033');
286-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-beta-owner_oid', 681, '2007-01-31 06:56:25.096519');
287-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-janitor_oid', 651, '2006-10-04 16:20:51.19954');
288-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('lifeless_oid', 21, '2005-06-06 08:59:51.598107');
289-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('limi_oid', 101, '2005-06-06 08:59:51.619713');
290-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('luk-claes_oid', 451, '2005-06-06 08:59:51.563952');
291-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mTmeENb', 2436231, '2008-06-27 14:49:11.149508');
292-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('marilize_oid', 551, '2005-06-06 08:59:51.593849');
293-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mark_oid', 11, '2005-06-06 08:59:51.591618');
294-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('martin-pitt_oid', 381, '2005-06-06 08:59:51.555051');
295-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('matsubara_oid', 661, '2006-12-13 21:19:06.369142');
296-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('morten_oid', 471, '2005-06-06 08:59:51.56614');
297-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mpo_oid', 481, '2005-06-06 08:59:51.567224');
298-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name12_oid', 121, '2005-06-06 08:59:51.612277');
299-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name16_oid', 161, '2005-06-06 08:59:51.593849');
300-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('neMCQNd', 2436061, '2007-08-09 21:25:37.832976');
301-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-priv_oid', 521, '2005-06-06 08:59:51.593849');
302-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-team-memberships_oid', 2436021, '2007-02-19 11:17:57.755666');
303-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('nsv_oid', 391, '2005-06-06 08:59:51.556132');
304-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('one-membership_oid', 2436031, '2007-02-21 10:53:59.700105');
305-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('rPwGRk4', 2436221, '2008-05-12 17:38:38.798696');
306-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('salgado_oid', 291, '2005-06-06 08:59:51.596025');
307-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('sigurd-ubuntu_oid', 351, '2005-06-06 08:59:51.623962');
308-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('skacel_oid', 361, '2005-06-06 08:59:51.5244');
309-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('spiv_oid', 71, '2005-06-06 08:59:51.551196');
310-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stevea_oid', 111, '2005-06-06 08:59:51.599234');
311-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stub_oid', 221, '2005-06-06 08:59:51.59276');
312-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('team-membership-janitor_oid', 671, '2006-10-04 16:20:51.19954');
313-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('tsukimi_oid', 501, '2005-06-06 08:59:51.569518');
314-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('valyag_oid', 441, '2005-06-06 08:59:51.562857');
315-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('yEzBPbd', 2436151, '2007-12-18 16:31:34.790641');
316-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('zRtPxw8', 243637, '2010-07-12 09:48:27.198885');
317-
318-
319-ALTER TABLE lp_openididentifier ENABLE TRIGGER ALL;
320-
321-
322 ALTER TABLE lp_personlocation DISABLE TRIGGER ALL;
323
324 INSERT INTO lp_personlocation (id, date_created, person, latitude, longitude, time_zone, last_modified_by, date_last_modified, visible, locked) VALUES (1, '2007-06-05 18:34:52.127945', 12, NULL, NULL, 'Australia/Perth', 12, '2007-06-05 18:34:52.127945', true, false);
325@@ -6299,6 +6327,13 @@
326 ALTER TABLE personnotification ENABLE TRIGGER ALL;
327
328
329+ALTER TABLE persontransferjob DISABLE TRIGGER ALL;
330+
331+
332+
333+ALTER TABLE persontransferjob ENABLE TRIGGER ALL;
334+
335+
336 ALTER TABLE pocketchroot DISABLE TRIGGER ALL;
337
338
339@@ -9815,6 +9850,13 @@
340 ALTER TABLE questionbug ENABLE TRIGGER ALL;
341
342
343+ALTER TABLE questionjob DISABLE TRIGGER ALL;
344+
345+
346+
347+ALTER TABLE questionjob ENABLE TRIGGER ALL;
348+
349+
350 ALTER TABLE questionmessage DISABLE TRIGGER ALL;
351
352 INSERT INTO questionmessage (id, question, message, action, new_status) VALUES (1, 6, 12, 35, 18);
353@@ -11237,6 +11279,13 @@
354 ALTER TABLE translationtemplateitem ENABLE TRIGGER ALL;
355
356
357+ALTER TABLE translationtemplatesbuild DISABLE TRIGGER ALL;
358+
359+
360+
361+ALTER TABLE translationtemplatesbuild ENABLE TRIGGER ALL;
362+
363+
364 ALTER TABLE translator DISABLE TRIGGER ALL;
365
366 INSERT INTO translator (id, translationgroup, language, translator, datecreated, style_guide_url) VALUES (1, 1, 387, 53, '2005-07-13 13:14:19.748396', NULL);
367
368=== modified file 'database/sampledata/current.sql'
369--- database/sampledata/current.sql 2010-10-07 22:46:08 +0000
370+++ database/sampledata/current.sql 2010-11-02 21:51:48 +0000
371@@ -1,6 +1,6 @@
372 -- Copyright 2010 Canonical Ltd. This software is licensed under the
373 -- GNU Affero General Public License version 3 (see the file LICENSE).
374--- Created using pg_dump (PostgreSQL) 8.4.4
375+-- Created using pg_dump (PostgreSQL) 8.4.5
376
377 SET check_function_bodies = false;
378 SET client_encoding = 'UTF8';
379@@ -822,6 +822,15 @@
380
381
382
383+
384+
385+
386+
387+
388+
389+
390+
391+
392 SET SESSION AUTHORIZATION DEFAULT;
393
394 ALTER TABLE account DISABLE TRIGGER ALL;
395@@ -3345,42 +3354,42 @@
396
397 ALTER TABLE bugmessage DISABLE TRIGGER ALL;
398
399-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (1, 2, 1, NULL, NULL, true);
400-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (2, 1, 3, NULL, NULL, true);
401-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (3, 1, 4, NULL, NULL, true);
402-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (4, 2, 5, NULL, NULL, true);
403-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (5, 2, 6, NULL, NULL, true);
404-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (6, 4, 7, NULL, NULL, true);
405-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (7, 5, 8, NULL, NULL, true);
406-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (8, 6, 9, NULL, NULL, true);
407-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (9, 3, 10, NULL, NULL, true);
408-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (10, 7, 11, NULL, NULL, true);
409-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (11, 8, 14, NULL, NULL, true);
410-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (12, 9, 15, NULL, NULL, true);
411-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (13, 10, 17, NULL, NULL, true);
412-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (14, 10, 16, NULL, NULL, true);
413-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (15, 11, 24, NULL, NULL, true);
414-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (16, 11, 25, NULL, NULL, true);
415-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (17, 11, 26, NULL, NULL, true);
416-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (18, 11, 27, NULL, NULL, true);
417-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (19, 11, 28, NULL, NULL, true);
418-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (20, 11, 29, NULL, NULL, true);
419-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (21, 11, 30, NULL, NULL, true);
420-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (22, 12, 31, NULL, NULL, true);
421-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (23, 12, 33, NULL, NULL, true);
422-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (24, 12, 34, NULL, NULL, true);
423-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (25, 12, 35, NULL, NULL, true);
424-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (26, 12, 36, NULL, NULL, true);
425-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (27, 13, 37, NULL, NULL, true);
426-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (28, 13, 38, NULL, NULL, true);
427-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (29, 14, 39, NULL, NULL, true);
428-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (30, 15, 40, NULL, NULL, true);
429-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (31, 15, 44, 11, '<4284D7D1.6010208@gmx.de>', true);
430-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (32, 15, 45, 11, '<20050517185429.GB20786@spring.luon.net>', true);
431-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (33, 15, 46, 11, '<428A44E9.6090802@gmx.de>', true);
432-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (34, 15, 47, 11, '<20050517202044.GA23231@spring.luon.net>', true);
433-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (35, 15, 48, 11, '<20050617140011.GA15638@piware.de>', true);
434-INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (36, 15, 49, 11, '<42BD2E36.9090809@gmx.de>', true);
435+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (1, 2, 1, NULL, NULL, true, NULL);
436+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (2, 1, 3, NULL, NULL, true, NULL);
437+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (3, 1, 4, NULL, NULL, true, NULL);
438+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (4, 2, 5, NULL, NULL, true, NULL);
439+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (5, 2, 6, NULL, NULL, true, NULL);
440+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (6, 4, 7, NULL, NULL, true, NULL);
441+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (7, 5, 8, NULL, NULL, true, NULL);
442+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (8, 6, 9, NULL, NULL, true, NULL);
443+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (9, 3, 10, NULL, NULL, true, NULL);
444+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (10, 7, 11, NULL, NULL, true, NULL);
445+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (11, 8, 14, NULL, NULL, true, NULL);
446+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (12, 9, 15, NULL, NULL, true, NULL);
447+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (13, 10, 17, NULL, NULL, true, NULL);
448+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (14, 10, 16, NULL, NULL, true, NULL);
449+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (15, 11, 24, NULL, NULL, true, NULL);
450+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (16, 11, 25, NULL, NULL, true, NULL);
451+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (17, 11, 26, NULL, NULL, true, NULL);
452+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (18, 11, 27, NULL, NULL, true, NULL);
453+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (19, 11, 28, NULL, NULL, true, NULL);
454+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (20, 11, 29, NULL, NULL, true, NULL);
455+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (21, 11, 30, NULL, NULL, true, NULL);
456+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (22, 12, 31, NULL, NULL, true, NULL);
457+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (23, 12, 33, NULL, NULL, true, NULL);
458+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (24, 12, 34, NULL, NULL, true, NULL);
459+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (25, 12, 35, NULL, NULL, true, NULL);
460+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (26, 12, 36, NULL, NULL, true, NULL);
461+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (27, 13, 37, NULL, NULL, true, NULL);
462+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (28, 13, 38, NULL, NULL, true, NULL);
463+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (29, 14, 39, NULL, NULL, true, NULL);
464+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (30, 15, 40, NULL, NULL, true, NULL);
465+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (31, 15, 44, 11, '<4284D7D1.6010208@gmx.de>', true, NULL);
466+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (32, 15, 45, 11, '<20050517185429.GB20786@spring.luon.net>', true, NULL);
467+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (33, 15, 46, 11, '<428A44E9.6090802@gmx.de>', true, NULL);
468+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (34, 15, 47, 11, '<20050517202044.GA23231@spring.luon.net>', true, NULL);
469+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (35, 15, 48, 11, '<20050617140011.GA15638@piware.de>', true, NULL);
470+INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible, index) VALUES (36, 15, 49, 11, '<42BD2E36.9090809@gmx.de>', true, NULL);
471
472
473 ALTER TABLE bugmessage ENABLE TRIGGER ALL;
474@@ -3811,13 +3820,6 @@
475 ALTER TABLE bugtrackercomponentgroup ENABLE TRIGGER ALL;
476
477
478-ALTER TABLE distributionsourcepackage DISABLE TRIGGER ALL;
479-
480-
481-
482-ALTER TABLE distributionsourcepackage ENABLE TRIGGER ALL;
483-
484-
485 ALTER TABLE bugtrackercomponent DISABLE TRIGGER ALL;
486
487
488@@ -3940,6 +3942,11 @@
489 INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (12, 1, 3, '2006-10-16 18:31:43.262049');
490 INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (13, 10, 5, '2007-06-24 13:12:05.04436');
491 INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (14, 11, 5, '2007-06-24 13:12:10.692827');
492+INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (15, 13, 1, '2010-10-15 00:37:06.128465');
493+INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (16, 13, 2, '2010-10-15 00:37:07.363901');
494+INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (17, 13, 3, '2010-10-15 00:37:08.219902');
495+INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (18, 13, 4, '2010-10-15 00:37:09.099819');
496+INSERT INTO componentselection (id, distroseries, component, date_created) VALUES (19, 13, 5, '2010-10-15 00:37:09.988375');
497
498
499 ALTER TABLE componentselection ENABLE TRIGGER ALL;
500@@ -4026,6 +4033,13 @@
501 ALTER TABLE distributionbounty ENABLE TRIGGER ALL;
502
503
504+ALTER TABLE distributionjob DISABLE TRIGGER ALL;
505+
506+
507+
508+ALTER TABLE distributionjob ENABLE TRIGGER ALL;
509+
510+
511 ALTER TABLE distributionmirror DISABLE TRIGGER ALL;
512
513 INSERT INTO distributionmirror (id, distribution, name, http_base_url, ftp_base_url, rsync_base_url, displayname, description, owner, speed, country, content, official_candidate, enabled, date_created, whiteboard, status, date_reviewed, reviewer, country_dns_mirror) VALUES (1, 1, 'archive-mirror', 'http://localhost:11375/valid-mirror/', NULL, NULL, NULL, NULL, 1, 10, 75, 1, true, true, '2006-10-16 18:31:43.434567', NULL, 30, NULL, NULL, false);
514@@ -4043,6 +4057,13 @@
515 ALTER TABLE distributionmirror ENABLE TRIGGER ALL;
516
517
518+ALTER TABLE distributionsourcepackage DISABLE TRIGGER ALL;
519+
520+
521+
522+ALTER TABLE distributionsourcepackage ENABLE TRIGGER ALL;
523+
524+
525 ALTER TABLE distributionsourcepackagecache DISABLE TRIGGER ALL;
526
527 INSERT INTO distributionsourcepackagecache (id, distribution, sourcepackagename, name, binpkgnames, binpkgsummaries, binpkgdescriptions, fti, changelog, archive) VALUES (1, 3, 19, 'alsa-utils', '', '', '', NULL, NULL, 1);
528@@ -5002,6 +5023,81 @@
529 ALTER TABLE lp_account ENABLE TRIGGER ALL;
530
531
532+ALTER TABLE lp_openididentifier DISABLE TRIGGER ALL;
533+
534+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6KHNEe3', 2436141, '2007-12-18 16:31:34.790641');
535+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6w7kmzC', 2436091, '2007-12-07 13:43:20.393704');
536+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('CALDpFr', 2436171, '2008-03-06 09:55:27.289842');
537+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('GMX7shE', 2436242, '2009-03-17 07:26:14.024613');
538+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('MGWJnTL', 2436111, '2007-12-14 16:52:15.403833');
539+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('R8FpwXd', 2436161, '2007-12-18 16:31:34.790641');
540+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('WQPMHdf', 2436081, '2007-11-12 15:23:19.847132');
541+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('andrelop_oid', 431, '2005-06-06 08:59:51.561685');
542+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('barbier_oid', 421, '2005-06-06 08:59:51.560604');
543+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-importer_oid', 581, '2005-12-06 09:48:58.287679');
544+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-watch-updater_oid', 621, '2006-05-23 12:49:30.483464');
545+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cCGE3LA', 2436101, '2007-12-14 16:52:15.403833');
546+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cF4PNk3', 2436241, '2008-11-04 12:59:26.965843');
547+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('callipeo_oid', 401, '2005-06-06 08:59:51.558429');
548+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('carlos_oid', 131, '2005-06-06 08:59:51.615543');
549+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cprov_oid', 281, '2005-06-06 08:59:51.59705');
550+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('daf_oid', 141, '2005-06-06 08:59:51.616666');
551+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('danner_oid', 371, '2005-06-06 08:59:51.549651');
552+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('ddaa_oid', 231, '2005-06-06 08:59:51.620823');
553+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('debonzi_oid', 271, '2005-06-06 08:59:51.557224');
554+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('edgar_oid', 331, '2005-06-06 08:59:51.621892');
555+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('former-user_oid', 701, '2006-12-13 21:19:06.369142');
556+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jblack_oid', 81, '2005-06-06 08:59:51.601584');
557+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jdub_oid', 61, '2005-06-06 08:59:51.600523');
558+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jordi_oid', 561, '2005-10-07 14:17:51.593849');
559+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jorge-gonzalez-gonzalez_oid', 411, '2005-06-06 08:59:51.559519');
560+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('justdave_oid', 31, '2005-06-06 08:59:51.610048');
561+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jvprat_oid', 341, '2005-06-06 08:59:51.622908');
562+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kYFxQYP', 2436243, '2009-08-04 10:50:39.383407');
563+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kamion_oid', 41, '2005-06-06 08:59:51.611185');
564+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('karl_oid', 631, '2006-05-23 12:49:30.483464');
565+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kebil_oid', 491, '2005-06-06 08:59:51.568323');
566+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('keybuk_oid', 51, '2005-06-06 08:59:51.608802');
567+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kiko_oid', 91, '2005-06-06 08:59:51.594941');
568+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kinnison_oid', 261, '2005-06-06 08:59:51.618722');
569+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kreutzm_oid', 511, '2005-06-06 08:59:51.570701');
570+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kurem_oid', 461, '2005-06-06 08:59:51.565033');
571+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-beta-owner_oid', 681, '2007-01-31 06:56:25.096519');
572+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-janitor_oid', 651, '2006-10-04 16:20:51.19954');
573+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('lifeless_oid', 21, '2005-06-06 08:59:51.598107');
574+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('limi_oid', 101, '2005-06-06 08:59:51.619713');
575+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('luk-claes_oid', 451, '2005-06-06 08:59:51.563952');
576+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mTmeENb', 2436231, '2008-06-27 14:49:11.149508');
577+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('marilize_oid', 551, '2005-06-06 08:59:51.593849');
578+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mark_oid', 11, '2005-06-06 08:59:51.591618');
579+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('martin-pitt_oid', 381, '2005-06-06 08:59:51.555051');
580+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('matsubara_oid', 661, '2006-12-13 21:19:06.369142');
581+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('morten_oid', 471, '2005-06-06 08:59:51.56614');
582+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mpo_oid', 481, '2005-06-06 08:59:51.567224');
583+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name12_oid', 121, '2005-06-06 08:59:51.612277');
584+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name16_oid', 161, '2005-06-06 08:59:51.593849');
585+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('neMCQNd', 2436061, '2007-08-09 21:25:37.832976');
586+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-priv_oid', 521, '2005-06-06 08:59:51.593849');
587+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-team-memberships_oid', 2436021, '2007-02-19 11:17:57.755666');
588+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('nsv_oid', 391, '2005-06-06 08:59:51.556132');
589+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('one-membership_oid', 2436031, '2007-02-21 10:53:59.700105');
590+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('rPwGRk4', 2436221, '2008-05-12 17:38:38.798696');
591+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('salgado_oid', 291, '2005-06-06 08:59:51.596025');
592+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('sigurd-ubuntu_oid', 351, '2005-06-06 08:59:51.623962');
593+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('skacel_oid', 361, '2005-06-06 08:59:51.5244');
594+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('spiv_oid', 71, '2005-06-06 08:59:51.551196');
595+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stevea_oid', 111, '2005-06-06 08:59:51.599234');
596+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stub_oid', 221, '2005-06-06 08:59:51.59276');
597+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('team-membership-janitor_oid', 671, '2006-10-04 16:20:51.19954');
598+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('tsukimi_oid', 501, '2005-06-06 08:59:51.569518');
599+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('valyag_oid', 441, '2005-06-06 08:59:51.562857');
600+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('yEzBPbd', 2436151, '2007-12-18 16:31:34.790641');
601+INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('zRtPxw8', 243637, '2010-07-12 09:48:27.198885');
602+
603+
604+ALTER TABLE lp_openididentifier ENABLE TRIGGER ALL;
605+
606+
607 ALTER TABLE lp_person DISABLE TRIGGER ALL;
608
609 INSERT INTO lp_person (id, displayname, teamowner, teamdescription, name, language, fti, defaultmembershipperiod, defaultrenewalperiod, subscriptionpolicy, merged, datecreated, addressline1, addressline2, organization, city, province, country, postcode, phone, homepage_content, icon, mugshot, hide_email_addresses, creation_rationale, creation_comment, registrant, logo, renewal_policy, personal_standing, personal_standing_reason, mail_resumption_date, mailing_list_auto_subscribe_policy, mailing_list_receive_duplicates, visibility, verbose_bugnotifications, account) VALUES (1, 'Mark Shuttleworth', NULL, NULL, 'mark', NULL, NULL, NULL, NULL, 1, NULL, '2005-06-06 08:59:51.591618', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, 8, NULL, NULL, NULL, 10, 0, NULL, NULL, 1, true, 1, false, 11);
610@@ -5108,81 +5204,6 @@
611 ALTER TABLE lp_person ENABLE TRIGGER ALL;
612
613
614-ALTER TABLE lp_openididentifier DISABLE TRIGGER ALL;
615-
616-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6KHNEe3', 2436141, '2007-12-18 16:31:34.790641');
617-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('6w7kmzC', 2436091, '2007-12-07 13:43:20.393704');
618-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('CALDpFr', 2436171, '2008-03-06 09:55:27.289842');
619-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('GMX7shE', 2436242, '2009-03-17 07:26:14.024613');
620-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('MGWJnTL', 2436111, '2007-12-14 16:52:15.403833');
621-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('R8FpwXd', 2436161, '2007-12-18 16:31:34.790641');
622-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('WQPMHdf', 2436081, '2007-11-12 15:23:19.847132');
623-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('andrelop_oid', 431, '2005-06-06 08:59:51.561685');
624-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('barbier_oid', 421, '2005-06-06 08:59:51.560604');
625-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-importer_oid', 581, '2005-12-06 09:48:58.287679');
626-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('bug-watch-updater_oid', 621, '2006-05-23 12:49:30.483464');
627-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cCGE3LA', 2436101, '2007-12-14 16:52:15.403833');
628-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cF4PNk3', 2436241, '2008-11-04 12:59:26.965843');
629-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('callipeo_oid', 401, '2005-06-06 08:59:51.558429');
630-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('carlos_oid', 131, '2005-06-06 08:59:51.615543');
631-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('cprov_oid', 281, '2005-06-06 08:59:51.59705');
632-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('daf_oid', 141, '2005-06-06 08:59:51.616666');
633-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('danner_oid', 371, '2005-06-06 08:59:51.549651');
634-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('ddaa_oid', 231, '2005-06-06 08:59:51.620823');
635-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('debonzi_oid', 271, '2005-06-06 08:59:51.557224');
636-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('edgar_oid', 331, '2005-06-06 08:59:51.621892');
637-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('former-user_oid', 701, '2006-12-13 21:19:06.369142');
638-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jblack_oid', 81, '2005-06-06 08:59:51.601584');
639-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jdub_oid', 61, '2005-06-06 08:59:51.600523');
640-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jordi_oid', 561, '2005-10-07 14:17:51.593849');
641-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jorge-gonzalez-gonzalez_oid', 411, '2005-06-06 08:59:51.559519');
642-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('justdave_oid', 31, '2005-06-06 08:59:51.610048');
643-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('jvprat_oid', 341, '2005-06-06 08:59:51.622908');
644-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kYFxQYP', 2436243, '2009-08-04 10:50:39.383407');
645-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kamion_oid', 41, '2005-06-06 08:59:51.611185');
646-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('karl_oid', 631, '2006-05-23 12:49:30.483464');
647-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kebil_oid', 491, '2005-06-06 08:59:51.568323');
648-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('keybuk_oid', 51, '2005-06-06 08:59:51.608802');
649-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kiko_oid', 91, '2005-06-06 08:59:51.594941');
650-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kinnison_oid', 261, '2005-06-06 08:59:51.618722');
651-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kreutzm_oid', 511, '2005-06-06 08:59:51.570701');
652-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('kurem_oid', 461, '2005-06-06 08:59:51.565033');
653-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-beta-owner_oid', 681, '2007-01-31 06:56:25.096519');
654-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('launchpad-janitor_oid', 651, '2006-10-04 16:20:51.19954');
655-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('lifeless_oid', 21, '2005-06-06 08:59:51.598107');
656-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('limi_oid', 101, '2005-06-06 08:59:51.619713');
657-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('luk-claes_oid', 451, '2005-06-06 08:59:51.563952');
658-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mTmeENb', 2436231, '2008-06-27 14:49:11.149508');
659-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('marilize_oid', 551, '2005-06-06 08:59:51.593849');
660-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mark_oid', 11, '2005-06-06 08:59:51.591618');
661-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('martin-pitt_oid', 381, '2005-06-06 08:59:51.555051');
662-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('matsubara_oid', 661, '2006-12-13 21:19:06.369142');
663-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('morten_oid', 471, '2005-06-06 08:59:51.56614');
664-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('mpo_oid', 481, '2005-06-06 08:59:51.567224');
665-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name12_oid', 121, '2005-06-06 08:59:51.612277');
666-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('name16_oid', 161, '2005-06-06 08:59:51.593849');
667-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('neMCQNd', 2436061, '2007-08-09 21:25:37.832976');
668-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-priv_oid', 521, '2005-06-06 08:59:51.593849');
669-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('no-team-memberships_oid', 2436021, '2007-02-19 11:17:57.755666');
670-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('nsv_oid', 391, '2005-06-06 08:59:51.556132');
671-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('one-membership_oid', 2436031, '2007-02-21 10:53:59.700105');
672-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('rPwGRk4', 2436221, '2008-05-12 17:38:38.798696');
673-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('salgado_oid', 291, '2005-06-06 08:59:51.596025');
674-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('sigurd-ubuntu_oid', 351, '2005-06-06 08:59:51.623962');
675-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('skacel_oid', 361, '2005-06-06 08:59:51.5244');
676-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('spiv_oid', 71, '2005-06-06 08:59:51.551196');
677-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stevea_oid', 111, '2005-06-06 08:59:51.599234');
678-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('stub_oid', 221, '2005-06-06 08:59:51.59276');
679-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('team-membership-janitor_oid', 671, '2006-10-04 16:20:51.19954');
680-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('tsukimi_oid', 501, '2005-06-06 08:59:51.569518');
681-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('valyag_oid', 441, '2005-06-06 08:59:51.562857');
682-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('yEzBPbd', 2436151, '2007-12-18 16:31:34.790641');
683-INSERT INTO lp_openididentifier (identifier, account, date_created) VALUES ('zRtPxw8', 243637, '2010-07-12 09:48:27.198885');
684-
685-
686-ALTER TABLE lp_openididentifier ENABLE TRIGGER ALL;
687-
688-
689 ALTER TABLE lp_personlocation DISABLE TRIGGER ALL;
690
691 INSERT INTO lp_personlocation (id, date_created, person, latitude, longitude, time_zone, last_modified_by, date_last_modified, visible, locked) VALUES (1, '2007-06-05 18:34:52.127945', 12, NULL, NULL, 'Australia/Perth', 12, '2007-06-05 18:34:52.127945', true, false);
692@@ -6311,6 +6332,13 @@
693 ALTER TABLE personnotification ENABLE TRIGGER ALL;
694
695
696+ALTER TABLE persontransferjob DISABLE TRIGGER ALL;
697+
698+
699+
700+ALTER TABLE persontransferjob ENABLE TRIGGER ALL;
701+
702+
703 ALTER TABLE pocketchroot DISABLE TRIGGER ALL;
704
705
706@@ -9827,6 +9855,13 @@
707 ALTER TABLE questionbug ENABLE TRIGGER ALL;
708
709
710+ALTER TABLE questionjob DISABLE TRIGGER ALL;
711+
712+
713+
714+ALTER TABLE questionjob ENABLE TRIGGER ALL;
715+
716+
717 ALTER TABLE questionmessage DISABLE TRIGGER ALL;
718
719 INSERT INTO questionmessage (id, question, message, action, new_status) VALUES (1, 6, 12, 35, 18);
720
721=== modified file 'lib/lp/archivepublisher/config.py'
722--- lib/lp/archivepublisher/config.py 2010-10-06 11:46:51 +0000
723+++ lib/lp/archivepublisher/config.py 2010-11-02 21:51:48 +0000
724@@ -51,12 +51,6 @@
725 archive.distribution.name)
726 update_pub_config(pubconf)
727 elif archive.purpose == ArchivePurpose.PARTNER:
728- # Reset the list of components to partner only. This prevents
729- # any publisher runs from generating components not related to
730- # the partner archive.
731- for distroseries in pubconf._distroseries.keys():
732- pubconf._distroseries[
733- distroseries]['components'] = ['partner']
734 pubconf.distroroot = config.archivepublisher.root
735 pubconf.archiveroot = os.path.join(
736 pubconf.distroroot, archive.distribution.name + '-partner')
737@@ -112,22 +106,13 @@
738
739 for dr in distribution:
740 distroseries_name = dr.name.encode('utf-8')
741- config_segment = {
742- "archtags": []
743- }
744-
745- for dar in dr.architectures:
746- if dar.enabled:
747- config_segment["archtags"].append(
748- dar.architecturetag.encode('utf-8'))
749+ config_segment = {}
750
751 if dr.lucilleconfig:
752 strio = StringIO(dr.lucilleconfig.encode('utf-8'))
753 config_segment["config"] = ConfigParser()
754 config_segment["config"].readfp(strio)
755 strio.close()
756- config_segment["components"] = config_segment["config"].get(
757- "publishing", "components").split(" ")
758
759 self._distroseries[distroseries_name] = config_segment
760
761@@ -150,12 +135,6 @@
762 'No Lucille config section for %s in %s' %
763 (dr, self.distroName))
764
765- def archTagsForSeries(self, dr):
766- return self.series(dr)["archtags"]
767-
768- def componentsForSeries(self, dr):
769- return self.series(dr)["components"]
770-
771 def _extractConfigInfo(self):
772 """Extract configuration information into the attributes we use"""
773 self.stayofexecution = self._distroconfig.get(
774
775=== modified file 'lib/lp/archivepublisher/ftparchive.py'
776--- lib/lp/archivepublisher/ftparchive.py 2010-10-17 10:04:15 +0000
777+++ lib/lp/archivepublisher/ftparchive.py 2010-11-02 21:51:48 +0000
778@@ -196,7 +196,9 @@
779 anything in them currently.
780 """
781 for distroseries in self.distroseries:
782- components = self._config.componentsForSeries(distroseries.name)
783+ components = [
784+ comp.name for comp in
785+ self.publisher.archive.getComponentsForSeries(distroseries)]
786 for pocket in PackagePublishingPocket.items:
787 if not fullpublish:
788 if not self.publisher.isDirty(distroseries, pocket):
789@@ -239,7 +241,9 @@
790 "_".join((suite, ) + parts)))
791 touch_list(comp, "source")
792
793- for arch in self._config.archTagsForSeries(distroseries.name):
794+ arch_tags = [
795+ a.architecturetag for a in distroseries.enabled_architectures]
796+ for arch in arch_tags:
797 # Touch more file lists for the archs.
798 touch_list(comp, "binary-" + arch)
799 touch_list(comp, "debian-installer", "binary-" + arch)
800@@ -771,8 +775,11 @@
801 """Generates the config stanza for an individual pocket."""
802 suite = distroseries.getSuite(pocket)
803
804- archs = self._config.archTagsForSeries(distroseries.name)
805- comps = self._config.componentsForSeries(distroseries.name)
806+ archs = [
807+ a.architecturetag for a in distroseries.enabled_architectures]
808+ comps = [
809+ comp.name for comp in
810+ self.publisher.archive.getComponentsForSeries(distroseries)]
811
812 self.log.debug("Generating apt config for %s" % suite)
813 apt_config.write(STANZA_TEMPLATE % {
814
815=== modified file 'lib/lp/archivepublisher/publishing.py'
816--- lib/lp/archivepublisher/publishing.py 2010-10-15 10:35:15 +0000
817+++ lib/lp/archivepublisher/publishing.py 2010-11-02 21:51:48 +0000
818@@ -298,12 +298,8 @@
819
820 self.release_files_needed.add((distroseries.name, pocket))
821
822- # Retrieve components from the publisher config because
823- # it gets overridden in getPubConfig to set the
824- # correct components for the archive being used.
825- for component_name in self._config.componentsForSeries(
826- distroseries.name):
827- component = getUtility(IComponentSet)[component_name]
828+ components = self.archive.getComponentsForSeries(distroseries)
829+ for component in components:
830 self._writeComponentIndexes(
831 distroseries, pocket, component)
832
833@@ -450,8 +446,11 @@
834 # and pocket, don't!
835 return
836
837- all_components = self._config.componentsForSeries(distroseries.name)
838- all_architectures = self._config.archTagsForSeries(distroseries.name)
839+ all_components = [
840+ comp.name for comp in
841+ self.archive.getComponentsForSeries(distroseries)]
842+ all_architectures = [
843+ a.architecturetag for a in distroseries.enabled_architectures]
844 all_files = set()
845 for component in all_components:
846 self._writeSuiteSource(
847
848=== modified file 'lib/lp/archivepublisher/tests/publisher-config.txt'
849--- lib/lp/archivepublisher/tests/publisher-config.txt 2010-08-23 16:51:11 +0000
850+++ lib/lp/archivepublisher/tests/publisher-config.txt 2010-11-02 21:51:48 +0000
851@@ -22,13 +22,7 @@
852 ... for attr_name in config_attributes:
853 ... print '%s: %s' % (attr_name, getattr(config, attr_name))
854 ... for distroseries_name in sorted(config.distroSeriesNames()):
855- ... print '%s:' % distroseries_name
856- ... sorted_arches = sorted(
857- ... config.archTagsForSeries(distroseries_name))
858- ... print 'Architectures:', ', '.join(sorted_arches)
859- ... sorted_components = sorted(
860- ... config.componentsForSeries(distroseries_name))
861- ... print 'Components:', ', '.join(sorted_components)
862+ ... print '%s' % distroseries_name
863
864
865 == Primary ==
866@@ -49,12 +43,8 @@
867 cacheroot: /var/tmp/archive/ubuntutest-cache
868 miscroot: /var/tmp/archive/ubuntutest-misc
869 temproot: /var/tmp/archive/ubuntutest-temp
870- breezy-autotest:
871- Architectures:
872- Components: main, multiverse, restricted, universe
873- hoary-test:
874- Architectures: amd64, i386
875- Components: main, multiverse, restricted, universe
876+ breezy-autotest
877+ hoary-test
878
879
880 == PPAs ==
881@@ -98,12 +88,8 @@
882 cacheroot: None
883 miscroot: None
884 temproot: /var/tmp/archive/ubuntutest-temp
885- breezy-autotest:
886- Architectures:
887- Components: main, multiverse, restricted, universe
888- hoary-test:
889- Architectures: amd64, i386
890- Components: main, multiverse, restricted, universe
891+ breezy-autotest
892+ hoary-test
893
894 There is a separate location for private PPAs that is used if the
895 archive is marked as private:
896@@ -133,12 +119,8 @@
897 cacheroot: None
898 miscroot: None
899 temproot: /var/tmp/archive/ubuntutest-temp
900- breezy-autotest:
901- Architectures:
902- Components: main, multiverse, restricted, universe
903- hoary-test:
904- Architectures: amd64, i386
905- Components: main, multiverse, restricted, universe
906+ breezy-autotest
907+ hoary-test
908
909
910 == Partner ==
911@@ -163,12 +145,8 @@
912 cacheroot: None
913 miscroot: None
914 temproot: /var/tmp/archive/ubuntutest-temp
915- breezy-autotest:
916- Architectures:
917- Components: partner
918- hoary-test:
919- Architectures: amd64, i386
920- Components: partner
921+ breezy-autotest
922+ hoary-test
923
924
925 == DEBUG ==
926@@ -194,12 +172,8 @@
927 cacheroot: None
928 miscroot: None
929 temproot: /var/tmp/archive/ubuntutest-temp
930- breezy-autotest:
931- Architectures:
932- Components: main, multiverse, restricted, universe
933- hoary-test:
934- Architectures: amd64, i386
935- Components: main, multiverse, restricted, universe
936+ breezy-autotest
937+ hoary-test
938
939
940 == COPY ==
941@@ -223,9 +197,5 @@
942 cacheroot: /var/tmp/archive/ubuntutest-rebuildtest99/ubuntutest-cache
943 miscroot: /var/tmp/archive/ubuntutest-rebuildtest99/ubuntutest-misc
944 temproot: /var/tmp/archive/ubuntutest-rebuildtest99/ubuntutest-temp
945- breezy-autotest:
946- Architectures:
947- Components: main, multiverse, restricted, universe
948- hoary-test:
949- Architectures: amd64, i386
950- Components: main, multiverse, restricted, universe
951+ breezy-autotest
952+ hoary-test
953
954=== modified file 'lib/lp/archivepublisher/tests/test_config.py'
955--- lib/lp/archivepublisher/tests/test_config.py 2010-10-20 20:51:26 +0000
956+++ lib/lp/archivepublisher/tests/test_config.py 2010-11-02 21:51:48 +0000
957@@ -33,10 +33,6 @@
958 self.assertEquals(len(dsns), 2)
959 self.assertEquals(dsns[0], "breezy-autotest")
960 self.assertEquals(dsns[1], "hoary-test")
961- self.assertRaises(LucilleConfigError,
962- d.archTagsForSeries, "somename")
963- self.assertRaises(LucilleConfigError,
964- d.archTagsForSeries, "unknown")
965
966 def testInstantiate(self):
967 """Config should instantiate"""
968@@ -55,12 +51,6 @@
969 self.assertEquals(dsns[0], "breezy-autotest")
970 self.assertEquals(dsns[1], "hoary-test")
971
972- def testArchTagsForSeries(self):
973- """Config should have the arch tags for the drs"""
974- d = Config(self.ubuntutest)
975- archs = d.archTagsForSeries("hoary-test")
976- self.assertEquals(len(archs), 2)
977-
978 def testDistroConfig(self):
979 """Config should have parsed a distro config"""
980 d = Config(self.ubuntutest)
981
982=== modified file 'lib/lp/registry/interfaces/distroseries.py'
983--- lib/lp/registry/interfaces/distroseries.py 2010-11-02 06:21:58 +0000
984+++ lib/lp/registry/interfaces/distroseries.py 2010-11-02 21:51:48 +0000
985@@ -390,6 +390,9 @@
986 # DistroArchSeries lookup properties/methods.
987 architectures = Attribute("All architectures in this series.")
988
989+ enabled_architectures = Attribute(
990+ "All architectures in this series with the 'enabled' flag set.")
991+
992 virtualized_architectures = Attribute(
993 "All architectures in this series where PPA is supported.")
994
995
996=== modified file 'lib/lp/registry/model/distroseries.py'
997--- lib/lp/registry/model/distroseries.py 2010-11-02 06:21:58 +0000
998+++ lib/lp/registry/model/distroseries.py 2010-11-02 21:51:48 +0000
999@@ -358,6 +358,15 @@
1000 return None
1001
1002 @property
1003+ def enabled_architectures(self):
1004+ store = Store.of(self)
1005+ results = store.find(
1006+ DistroArchSeries,
1007+ DistroArchSeries.distroseries == self,
1008+ DistroArchSeries.enabled == True)
1009+ return results.order_by(DistroArchSeries.architecturetag)
1010+
1011+ @property
1012 def buildable_architectures(self):
1013 store = Store.of(self)
1014 origin = [
1015
1016=== modified file 'lib/lp/soyuz/doc/archive.txt'
1017--- lib/lp/soyuz/doc/archive.txt 2010-10-09 16:36:22 +0000
1018+++ lib/lp/soyuz/doc/archive.txt 2010-11-02 21:51:48 +0000
1019@@ -46,6 +46,8 @@
1020 True
1021 >>> cprov_archive.is_main
1022 False
1023+ >>> cprov_archive.is_partner
1024+ False
1025 >>> cprov_archive.is_active
1026 True
1027 >>> cprov_archive.distribution.main_archive.is_main
1028@@ -1365,6 +1367,8 @@
1029 ... ubuntutest, ArchivePurpose.PARTNER)
1030 >>> print partner_archive.name
1031 partner
1032+ >>> print partner_archive.is_partner
1033+ True
1034
1035 It explicitly fails when purpose is PPA, since such lookup should be
1036 restricted by archive owner.
1037
1038=== modified file 'lib/lp/soyuz/doc/distroarchseries.txt'
1039--- lib/lp/soyuz/doc/distroarchseries.txt 2010-10-19 01:46:38 +0000
1040+++ lib/lp/soyuz/doc/distroarchseries.txt 2010-11-02 21:51:48 +0000
1041@@ -33,6 +33,17 @@
1042 >>> print hoary_i386.enabled
1043 True
1044
1045+`DistroSeries.enabled_architectures` is a `ResultSet` containing the
1046+architectures with that flag set.
1047+
1048+ >>> hoary_i386 in hoary.enabled_architectures
1049+ True
1050+ >>> from lp.testing import celebrity_logged_in
1051+ >>> with celebrity_logged_in('admin'):
1052+ ... hoary_i386.enabled = False
1053+ >>> hoary_i386 in hoary.enabled_architectures
1054+ False
1055+
1056
1057 DistroArchSeries can tell you about their published releases
1058 ============================================================
1059
1060=== modified file 'lib/lp/soyuz/interfaces/archive.py'
1061--- lib/lp/soyuz/interfaces/archive.py 2010-10-28 14:38:22 +0000
1062+++ lib/lp/soyuz/interfaces/archive.py 2010-11-02 21:51:48 +0000
1063@@ -337,6 +337,8 @@
1064
1065 is_ppa = Attribute("True if this archive is a PPA.")
1066
1067+ is_partner = Attribute("True if this archive is a partner archive.")
1068+
1069 is_copy = Attribute("True if this archive is a copy archive.")
1070
1071 is_main = Bool(
1072@@ -462,6 +464,12 @@
1073 :return: True or False
1074 """
1075
1076+ def getComponentsForSeries(distroseries):
1077+ """Calculate the components available for use in this archive.
1078+
1079+ :return: An `IResultSet` of `IComponent` objects.
1080+ """
1081+
1082 def updateArchiveCache():
1083 """Concentrate cached information about the archive contents.
1084
1085
1086=== modified file 'lib/lp/soyuz/model/archive.py'
1087--- lib/lp/soyuz/model/archive.py 2010-10-29 13:17:00 +0000
1088+++ lib/lp/soyuz/model/archive.py 2010-11-02 21:51:48 +0000
1089@@ -351,6 +351,11 @@
1090 return self.purpose == ArchivePurpose.PPA
1091
1092 @property
1093+ def is_partner(self):
1094+ """See `IArchive`."""
1095+ return self.purpose == ArchivePurpose.PARTNER
1096+
1097+ @property
1098 def is_copy(self):
1099 """See `IArchive`."""
1100 return self.purpose == ArchivePurpose.COPY
1101@@ -835,6 +840,12 @@
1102
1103 return permission
1104
1105+ def getComponentsForSeries(self, distroseries):
1106+ if self.is_partner:
1107+ return [getUtility(IComponentSet)['partner']]
1108+ else:
1109+ return distroseries.components
1110+
1111 def updateArchiveCache(self):
1112 """See `IArchive`."""
1113 # Compiled regexp to remove puntication.
1114@@ -1102,7 +1113,7 @@
1115
1116 def checkUploadToPocket(self, distroseries, pocket):
1117 """See `IArchive`."""
1118- if self.purpose == ArchivePurpose.PARTNER:
1119+ if self.is_partner:
1120 if pocket not in (
1121 PackagePublishingPocket.RELEASE,
1122 PackagePublishingPocket.PROPOSED):
1123
1124=== modified file 'lib/lp/soyuz/tests/test_archive.py'
1125--- lib/lp/soyuz/tests/test_archive.py 2010-10-30 12:00:34 +0000
1126+++ lib/lp/soyuz/tests/test_archive.py 2010-11-02 21:51:48 +0000
1127@@ -52,6 +52,7 @@
1128 from lp.soyuz.model.binarypackagerelease import (
1129 BinaryPackageReleaseDownloadCount,
1130 )
1131+from lp.soyuz.model.component import ComponentSelection
1132 from lp.soyuz.tests.test_publishing import SoyuzTestPublisher
1133 from lp.testing import (
1134 ANONYMOUS,
1135@@ -1423,6 +1424,7 @@
1136 self.assertEqual(set([ap]),
1137 set(archive.getComponentsForUploader(person)))
1138
1139+
1140 class TestvalidatePPA(TestCaseWithFactory):
1141
1142 layer = DatabaseFunctionalLayer
1143@@ -1446,3 +1448,37 @@
1144 def test_valid_ppa(self):
1145 ppa_owner = self.factory.makePerson()
1146 self.assertEqual(None, Archive.validatePPA(ppa_owner, None))
1147+
1148+
1149+class TestGetComponentsForSeries(TestCaseWithFactory):
1150+ """Tests for Archive.getComponentsForSeries."""
1151+
1152+ layer = DatabaseFunctionalLayer
1153+
1154+ def setUp(self):
1155+ super(TestGetComponentsForSeries, self).setUp()
1156+ self.series = self.factory.makeDistroSeries()
1157+ self.comp1 = self.factory.makeComponent()
1158+ self.comp2 = self.factory.makeComponent()
1159+
1160+ def test_series_components_for_primary_archive(self):
1161+ # The primary archive uses the series' defined components.
1162+ archive = self.factory.makeArchive()
1163+ self.assertEquals(
1164+ 0, archive.getComponentsForSeries(self.series).count())
1165+
1166+ ComponentSelection(distroseries=self.series, component=self.comp1)
1167+ ComponentSelection(distroseries=self.series, component=self.comp2)
1168+
1169+ self.assertEquals(
1170+ set((self.comp1, self.comp2)),
1171+ set(archive.getComponentsForSeries(self.series)))
1172+
1173+ def test_partner_component_for_partner_archive(self):
1174+ # The partner archive always uses only the 'partner' component.
1175+ archive = self.factory.makeArchive(purpose=ArchivePurpose.PARTNER)
1176+ ComponentSelection(distroseries=self.series, component=self.comp1)
1177+ partner_comp = getUtility(IComponentSet)['partner']
1178+ self.assertEquals(
1179+ [partner_comp],
1180+ list(archive.getComponentsForSeries(self.series)))