CREATE TEMPORARY TABLE `considered_build_assignments` (`id` BIGINT, UNIQUE KEY `id`(`id`)); CREATE TEMPORARY TABLE `considered_build_assignments_2` (`id` BIGINT, UNIQUE KEY `id`(`id`)); CREATE TEMPORARY TABLE `considered_build_assignments_3` (`id` BIGINT, UNIQUE KEY `id`(`id`)); CREATE TEMPORARY TABLE `considered_build_assignments_4` (`id` BIGINT, UNIQUE KEY `id`(`id`)); INSERT IGNORE INTO `considered_build_assignments` (`id`) SELECT `build_assignments`.`id` FROM `build_assignments` JOIN `package_sources` ON `build_assignments`.`package_source`=`package_sources`.`id` JOIN `binary_packages` ON `build_assignments`.`id`=`binary_packages`.`build_assignment` JOIN `binary_packages_in_repositories` ON `binary_packages`.`id`=`binary_packages_in_repositories`.`package` JOIN `architecture_compatibilities` ON `architecture_compatibilities`.`built_for`=`build_assignments`.`architecture` AND `architecture_compatibilities`.`fully_compatible` JOIN `architectures` ON `architecture_compatibilities`.`runs_on`=`architectures`.`id` LEFT JOIN `toolchain_order` ON `package_sources`.`pkgbase`=`toolchain_order`.`pkgbase` WHERE (`build_assignments`.`is_blocked` IS NULL) AND (EXISTS (SELECT 1 FROM `build_dependency_loops` WHERE `build_dependency_loops`.`build_assignment`=`build_assignments`.`id`) OR NOT EXISTS (SELECT 1 FROM `binary_packages` AS `todos` JOIN `binary_packages_in_repositories` AS `todo_bpirs` ON `todos`.`id`=`todo_bpirs`.`package` AND `todo_bpirs`.`repository`=9 JOIN `dependencies` AS `l_deps` ON `todos`.`id`=`l_deps`.`dependent` JOIN `versions` AS `l_dep_vs` ON `l_deps`.`version`=`l_dep_vs`.`id` JOIN `dependency_types` AS `l_dep_ts` ON `l_deps`.`dependency_type`=`l_dep_ts`.`id` AND `l_dep_ts`.`relevant_for_building` WHERE `todos`.`build_assignment`=`build_assignments`.`id` AND IF(`l_dep_ts`.`relevant_for_binary_packages`,EXISTS (SELECT 1 FROM `install_target_providers` AS `l_itps` JOIN `versions` AS `l_itp_vs` ON `l_itps`.`version`=`l_itp_vs`.`id` JOIN `binary_packages` AS `dep_bp` ON `l_itps`.`package`=`dep_bp`.`id` JOIN `binary_packages_in_repositories` AS `dep_bpir` ON `dep_bp`.`id`=`dep_bpir`.`package` AND `dep_bpir`.`repository`=9 JOIN `architecture_compatibilities` ON `architecture_compatibilities`.`built_for`=`dep_bp`.`architecture` AND `architecture_compatibilities`.`fully_compatible` WHERE `l_itps`.`install_target`=`l_deps`.`depending_on` AND `dep_bp`.`build_assignment`!=`build_assignments`.`id` AND `architecture_compatibilities`.`runs_on`=`architectures`.`id`),NOT EXISTS (SELECT 1 FROM `install_target_providers` AS `l_itps` JOIN `versions` AS `l_itp_vs` ON `l_itps`.`version`=`l_itp_vs`.`id` JOIN `binary_packages` AS `dep_bp` ON `l_itps`.`package`=`dep_bp`.`id` JOIN `binary_packages_in_repositories` AS `dep_bpir` ON `dep_bp`.`id`=`dep_bpir`.`package` JOIN `repositories` AS `dep_r` ON `dep_bpir`.`repository`=`dep_r`.`id` WHERE `l_itps`.`install_target`=`l_deps`.`depending_on` AND (`dep_r`.`is_on_master_mirror` OR `dep_bp`.`build_assignment`=`build_assignments`.`id`) AND `dep_r`.`architecture`=`architectures`.`id` AND ((`l_deps`.`version_relation`="<" AND `l_itp_vs`.`order`<`l_dep_vs`.`order`) OR (`l_deps`.`version_relation`="<=" AND `l_itp_vs`.`order`<=`l_dep_vs`.`order`) OR (`l_deps`.`version_relation`=">" AND `l_itp_vs`.`order`>`l_dep_vs`.`order`) OR (`l_deps`.`version_relation`=">=" AND `l_itp_vs`.`order`>=`l_dep_vs`.`order`) OR (`l_deps`.`version_relation`="=" AND `l_itp_vs`.`order`=`l_dep_vs`.`order`))))) OR `toolchain_order`.`pkgbase` IS NOT NULL) AND `binary_packages_in_repositories`.`repository`=9 AND `architectures`.`name` = from_base64("aTQ4Ng=="); INSERT IGNORE INTO `considered_build_assignments_2` (`id`) SELECT `considered_build_assignments`.`id` FROM `considered_build_assignments`; DELETE `considered_build_assignments` FROM `considered_build_assignments` JOIN `build_assignments` ON `build_assignments`.`id`=`considered_build_assignments`.`id` JOIN `package_sources` ON `build_assignments`.`package_source`=`package_sources`.`id` WHERE NOT EXISTS (SELECT 1 FROM `toolchain_order` WHERE `toolchain_order`.`pkgbase`=`package_sources`.`pkgbase`) AND EXISTS (SELECT 1 FROM `considered_build_assignments_2` JOIN `build_assignments` ON `build_assignments`.`id`=`considered_build_assignments_2`.`id` JOIN `package_sources` ON `build_assignments`.`package_source`=`package_sources`.`id` JOIN `toolchain_order` ON `toolchain_order`.`pkgbase`=`package_sources`.`pkgbase`); DELETE `considered_build_assignments_2` FROM `considered_build_assignments_2`; INSERT IGNORE INTO `considered_build_assignments_2` (`id`) SELECT `considered_build_assignments`.`id` FROM `considered_build_assignments`; INSERT IGNORE INTO `considered_build_assignments_3` (`id`) SELECT `considered_build_assignments`.`id` FROM `considered_build_assignments`; INSERT IGNORE INTO `considered_build_assignments_4` (`id`) SELECT `considered_build_assignments`.`id` FROM `considered_build_assignments`; DELETE `considered_build_assignments` FROM `considered_build_assignments` WHERE EXISTS (SELECT 1 FROM `considered_build_assignments_2` JOIN `build_assignments` ON `build_assignments`.`id`=`considered_build_assignments_2`.`id` JOIN `package_sources` ON `build_assignments`.`package_source`=`package_sources`.`id` JOIN `toolchain_order` ON `toolchain_order`.`pkgbase`=`package_sources`.`pkgbase`); INSERT IGNORE INTO `considered_build_assignments` (`id`)SELECT `considered_build_assignments_2`.`id` FROM `considered_build_assignments_2` JOIN `build_assignments` ON `build_assignments`.`id`=`considered_build_assignments_2`.`id` JOIN `package_sources` ON `build_assignments`.`package_source`=`package_sources`.`id` ORDER BY EXISTS (SELECT 1 FROM `toolchain_order` AS `late` JOIN `toolchain_order` AS `early` ON `late`.`pkgbase`!=`early`.`pkgbase` AND `late`.`number`>`early`.`number` JOIN `package_sources` AS `e_ps` ON `e_ps`.`pkgbase`=`early`.`pkgbase` JOIN `build_assignments` AS `e_ba` ON `e_ps`.`id`=`e_ba`.`package_source` JOIN `considered_build_assignments_3` AS `e_cba` ON `e_cba`.`id`=`e_ba`.`id` WHERE `late`.`pkgbase`=`package_sources`.`pkgbase`), EXISTS (SELECT 1 FROM `binary_packages_in_repositories` JOIN `repositories` ON `binary_packages_in_repositories`.`repository`=`repositories`.`id` AND `repositories`.`is_on_master_mirror` JOIN `architectures` ON `repositories`.`architecture`=`architectures`.`id` AND `architectures`.`name`=from_base64("aTQ4Ng==") JOIN `binary_packages` ON `binary_packages_in_repositories`.`package`=`binary_packages`.`id` WHERE `binary_packages`.`build_assignment`=`build_assignments`.`id`), EXISTS (SELECT 1 FROM `toolchain_order` AS `late` WHERE NOT EXISTS (SELECT 1 FROM `toolchain_order` AS `early` JOIN `package_sources` AS `e_ps` ON `e_ps`.`pkgbase`=`early`.`pkgbase` JOIN `build_assignments` AS `e_ba` ON `e_ps`.`id`=`e_ba`.`package_source` JOIN `considered_build_assignments_4` AS `e_cba` ON `e_ba`.`id`=`e_cba`.`id` WHERE `late`.`pkgbase`!=`early`.`pkgbase` AND `late`.`number`>`early`.`number`) AND `late`.`pkgbase`=`package_sources`.`pkgbase`) DESC LIMIT 1; DELETE `considered_build_assignments` FROM `considered_build_assignments` JOIN `build_slaves` ON `considered_build_assignments`.`id`=`build_slaves`.`currently_building`; SELECT `considered_build_assignments`.`id` FROM `considered_build_assignments` JOIN `build_assignments` ON `build_assignments`.`id`=`considered_build_assignments`.`id` JOIN `package_sources` ON `build_assignments`.`package_source`=`package_sources`.`id` JOIN `binary_packages` ON `build_assignments`.`id`=`binary_packages`.`build_assignment` LEFT JOIN (SELECT `failed_builds`.`build_assignment`,MAX(`failed_builds`.`date`) AS `date` FROM `failed_builds` GROUP BY `failed_builds`.`build_assignment`) AS `latest_failed_builds` ON `latest_failed_builds`.`build_assignment`=`build_assignments`.`id` LEFT JOIN (SELECT `tc_q`.`pkgbase`,`tc_q`.`architecture`,IF(`tc_q`.`is_blocked`,IF(`tc_q`.`is_built`,2,1),0) AS `priority` FROM (SELECT `late`.`pkgbase`,`binary_packages`.`architecture`,MAX(IF(EXISTS (SELECT 1 FROM `binary_packages` AS `built_bp` JOIN `binary_packages_in_repositories` AS `built_bpir` ON `built_bp`.`id`=`built_bpir`.`package` JOIN `repositories` AS `built_r` ON `built_bpir`.`repository`=`built_r`.`id` AND `built_r`.`is_on_master_mirror` WHERE `built_bp`.`build_assignment`=`build_assignments`.`id`),1,0)) AS `is_built`,MAX(IF(EXISTS (SELECT 1 FROM `package_sources` AS `block_ps` JOIN `build_assignments` AS `block_ba` ON `block_ps`.`id`=`block_ba`.`package_source` JOIN `binary_packages` AS `block_bp` ON `block_ba`.`id`=`block_bp`.`build_assignment` JOIN `binary_packages_in_repositories` AS `block_bpir` ON `block_bp`.`id`=`block_bpir`.`package` AND `block_bpir`.`repository`=9 JOIN `toolchain_order` AS `early` ON `early`.`pkgbase`=`block_ps`.`pkgbase` WHERE `early`.`number`<`late`.`number` AND `early`.`pkgbase`!=`late`.`pkgbase` AND (`block_bp`.`architecture`=`binary_packages`.`architecture` OR `block_bp`.`architecture`=1 OR `binary_packages`.`architecture`=1)),1,0)) AS `is_blocked` FROM `toolchain_order` AS `late` JOIN `package_sources` ON `package_sources`.`pkgbase`=`late`.`pkgbase` JOIN `build_assignments` ON `package_sources`.`id`=`build_assignments`.`package_source` JOIN `binary_packages` ON `build_assignments`.`id`=`binary_packages`.`build_assignment` JOIN `binary_packages_in_repositories` ON `binary_packages`.`id`=`binary_packages_in_repositories`.`package` AND `binary_packages_in_repositories`.`repository`=9 GROUP BY CONCAT(`late`.`pkgbase`,"-",`binary_packages`.`architecture`)) AS `tc_q`) AS `toolchain_query` ON `toolchain_query`.`pkgbase`=`package_sources`.`pkgbase` AND `toolchain_query`.`architecture`=`binary_packages`.`architecture` JOIN `architectures` ON `architectures`.`name`=from_base64("aTQ4Ng==") ORDER BY IFNULL(`toolchain_query`.`priority`,2),`build_assignments`.`priority` DESC,IFNULL(`latest_failed_builds`.`date`,0),IF(`architectures`.`id`=`build_assignments`.`architecture`,1,0) DESC,IF(EXISTS (SELECT 1 FROM `build_dependency_loops` WHERE `build_dependency_loops`.`build_assignment`=`build_assignments`.`id`),1,0),`package_sources`.`commit_time`,`build_assignments`.`id` LIMIT 1;