From cc0ff34336cde2408fcfc8724f48719f6f10ecb8 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Fri, 4 May 2018 14:25:49 +0200 Subject: lib/mysql-functions: add build_assignments earlier --- lib/mysql-functions | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) (limited to 'lib/mysql-functions') diff --git a/lib/mysql-functions b/lib/mysql-functions index 10808ab..3c45edc 100755 --- a/lib/mysql-functions +++ b/lib/mysql-functions @@ -299,22 +299,20 @@ mysql_generate_package_metadata() { grep -vxF 'any' || \ echo 'any' } | \ + base64_encode_each | \ while read -r arch; do - printf 'INSERT IGNORE INTO `build_assignments` (`package_source`,`architecture`,`is_blocked`,`is_broken`,`priority`)' - printf ' SELECT from_base64("%s"),`architectures`.`id`,NULL,0,0' \ - "$( - printf '%s' "${package_source_id}" | \ - base64 -w0 - )" + printf 'INSERT INTO `build_assignments` (`package_source`,`architecture`,`is_blocked`,`is_broken`,`priority`)' + printf ' SELECT %s,`architectures`.`id`,NULL,0,0' \ + "${package_source_id}" printf ' FROM `architectures`' printf ' WHERE `architectures`.`name` = from_base64("%s")' \ - "$( - printf '%s' "${arch}" | \ - base64 -w0 - )" - printf ';\n' - done > \ - "${temp_dir}/add-build-assignments-command" + "${arch}" + printf ' ON DUPLICATE KEY UPDATE `id`=LAST_INSERT_ID(`id`);\n' + printf 'SELECT "%s",LAST_INSERT_ID();\n' \ + "${arch}" + done | \ + mysql_run_query > \ + "${tmp_dir}/build-assignments.id" # TODO: correctly link between binary_packages and build_assignments using any_arch @@ -630,9 +628,6 @@ mysql_generate_package_metadata() { done { - if [ -s "${temp_dir}/add-build-assignments-command" ]; then - cat "${temp_dir}/add-build-assignments-command" - fi if [ -s "${temp_dir}/add-binary-packages-command" ]; then cat "${temp_dir}/add-binary-packages-command" fi -- cgit v1.2.3-54-g00ecf