diff options
author | Erich Eckner <git@eckner.net> | 2018-05-04 14:25:49 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2018-05-04 14:25:49 +0200 |
commit | cc0ff34336cde2408fcfc8724f48719f6f10ecb8 (patch) | |
tree | 8cfefddeb1148adb6d2bf8a823eaa23689d76b88 /lib/mysql-functions | |
parent | b4601c1e413e1d1f8db002fa4e126f4e9290555b (diff) | |
download | builder-cc0ff34336cde2408fcfc8724f48719f6f10ecb8.tar.xz |
lib/mysql-functions: add build_assignments earlier
Diffstat (limited to 'lib/mysql-functions')
-rwxr-xr-x | lib/mysql-functions | 27 |
1 files changed, 11 insertions, 16 deletions
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 |