Merge lp:~jtv/launchpad/bug-824553 into lp:launchpad
Status: | Merged |
---|---|
Approved by: | Robert Collins |
Approved revision: | no longer in the source branch. |
Merged at revision: | 13727 |
Proposed branch: | lp:~jtv/launchpad/bug-824553 |
Merge into: | lp:launchpad |
Diff against target: |
87 lines (+18/-15) 2 files modified
lib/lp/archivepublisher/scripts/publish_ftpmaster.py (+8/-7) lib/lp/archivepublisher/tests/test_publish_ftpmaster.py (+10/-8) |
To merge this branch: | bzr merge lp:~jtv/launchpad/bug-824553 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Robert Collins (community) | Approve | ||
Review via email: mp+71823@code.launchpad.net |
Commit message
[r=lifeless][bug=824553] Create all indexes for a new distroseries at once.
Description of the change
= Summary =
When publish-ftpmaster perceives a new distroseries, instead of doing its normal work it will create the series' initial indexes.
It does that with one separate publish-distro script run per suite. This is wasteful: a lot of work is repeated for every suite that needs to be done only once.
== Proposed fix ==
Instead, pass the full list of suites to publish-distro. It accepts multiple instances of the -s <suite> argument.
== Pre-implementation notes ==
I neglected to have a pre-implementation call about this. The bug specified what needed doing with great clarity and in sufficient detail.
== Implementation details ==
This may mean more repeated work if initial indexing should fail and have to be re-done on the next run. But why optimize for failure?
== Tests ==
{{{
./bin/test -vvc lp.archivepubli
}}}
== Demo and Q/A ==
Create a new Ubuntu distroseries (STOP! I MEANT ON A TEST SERVER, YOU FOOL!) and run publish-ftpmaster with -d ubuntu. It'll churn for a while. In the Ubuntu archive (e.g. /srv/launchpad.
Well, you probably won't. But if you had remembered to "ls -a" then you almost definitely would.
= Launchpad lint =
Checking for conflicts and issues in changed files.
Linting changed files:
lib/lp/
lib/lp/
Looks like the MarkIndexCreati onComplete call might want to be pushed down into the layer you call into.