SELECT DISTINCT BuildFarmJob.builder, BuildFarmJob.date_created, BuildFarmJob.date_finished, BuildFarmJob.date_first_dispatched, BuildFarmJob.date_started, BuildFarmJob.id, BuildFarmJob.job_type, BuildFarmJob.log, BuildFarmJob.processor, BuildFarmJob.status, BuildFarmJob.virtualized FROM BuildFarmJob LEFT JOIN (PackageBuild
INNER JOIN (Archive INNER JOIN TeamParticipation ON (TeamParticipation.person = 2 AND TeamParticipation.team = Archive.owner and (archive.private=FALSE or TeamParticipation.person is not NULL))) ON PackageBuild.archive = Archive.id) ON PackageBuild.build_farm_job = BuildFarmJob.id WHERE BuildFarmJob.builder = 3 ORDER BY BuildFarmJob.date_finished DESC, BuildFarmJob.id LIMIT 51 OFFSET 0;
930ms - uses two inner joins rather than left joins.
SELECT DISTINCT BuildFarmJob. builder, BuildFarmJob. date_created, BuildFarmJob. date_finished, BuildFarmJob. date_first_ dispatched, BuildFarmJob. date_started, BuildFarmJob.id, BuildFarmJob. job_type, BuildFarmJob.log, BuildFarmJob. processor, BuildFarmJob. status, BuildFarmJob. virtualized FROM BuildFarmJob LEFT JOIN (PackageBuild ion.person = 2 AND TeamParticipati on.team = Archive.owner and (archive. private= FALSE or TeamParticipati on.person is not NULL))) ON PackageBuild. archive = Archive.id) ON PackageBuild. build_farm_ job = BuildFarmJob.id WHERE BuildFarmJob. builder = 3 ORDER BY BuildFarmJob. date_finished DESC, BuildFarmJob.id LIMIT 51 OFFSET 0;
INNER JOIN (Archive INNER JOIN TeamParticipation ON (TeamParticipat
930ms - uses two inner joins rather than left joins.