Merge lp:~wgrant/launchpad/GRAR into lp:launchpad

Proposed by William Grant
Status: Merged
Approved by: Ian Booth
Approved revision: no longer in the source branch.
Merged at revision: 14958
Proposed branch: lp:~wgrant/launchpad/GRAR
Merge into: lp:launchpad
Diff against target: 28 lines (+6/-1)
2 files modified
lib/lp/soyuz/browser/tests/test_builder.py (+5/-0)
lib/lp/soyuz/model/buildpackagejob.py (+1/-1)
To merge this branch: bzr merge lp:~wgrant/launchpad/GRAR
Reviewer Review Type Date Requested Status
Ian Booth (community) Approve
Review via email: mp+97782@code.launchpad.net

Commit message

Fix BPB preloading on BuilderSet:+index. It was assuming that BPJ.id == Job.id.

Description of the change

GRAR

To post a comment you must log in.
Revision history for this message
Ian Booth (wallyworld) wrote :

Nice catch

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'lib/lp/soyuz/browser/tests/test_builder.py'
2--- lib/lp/soyuz/browser/tests/test_builder.py 2012-03-15 08:54:32 +0000
3+++ lib/lp/soyuz/browser/tests/test_builder.py 2012-03-16 01:35:22 +0000
4@@ -73,6 +73,11 @@
5 # Create a non-buildfarm job to ensure that the BuildQueue and
6 # Job IDs differ, detecting bug #919116.
7 Job()
8+ # And create BuildFarmJobs of the various types to throw IDs off
9+ # even further, detecting more preloading issues.
10+ self.factory.makeBinaryPackageBuild().queueBuild()
11+ self.factory.makeSourcePackageRecipeBuildJob()
12+ self.factory.makeTranslationTemplatesBuildJob()
13
14 def test_builders_binary_package_build_query_count(self):
15 def create_build():
16
17=== modified file 'lib/lp/soyuz/model/buildpackagejob.py'
18--- lib/lp/soyuz/model/buildpackagejob.py 2012-01-02 11:21:14 +0000
19+++ lib/lp/soyuz/model/buildpackagejob.py 2012-03-16 01:35:22 +0000
20@@ -69,7 +69,7 @@
21 from lp.soyuz.model.binarypackagebuild import BinaryPackageBuild
22 return list(IStore(BinaryPackageBuild).find(
23 BinaryPackageBuild,
24- [BuildPackageJob.id.is_in([job.id for job in jobs]),
25+ [BuildPackageJob.job_id.is_in([job.id for job in jobs]),
26 BuildPackageJob.build_id == BinaryPackageBuild.id]))
27
28 def score(self):