add index build(canceled, is_background, source_status, id)
addressing query:
SELECT build.id AS build_id, build.pkgs AS build_pkgs, build.built_packages AS build_built_packages, build.pkg_version AS build_pkg_version, build.canceled AS build_canceled, build.repos AS build_repos, build.submitted_on AS build_submitted_on, build.result_dir AS build_result_dir, build.memory_reqs AS build_memory_reqs, build.timeout AS build_timeout, build.enable_net AS build_enable_net, build.source_type AS build_source_type, build.source_json AS build_source_json, build.fail_type AS build_fail_type, build.is_background AS build_is_background, build.source_status AS build_source_status, build.srpm_url AS build_srpm_url, build.user_id AS build_user_id, build.copr_id AS build_copr_id, build.package_id AS build_package_id, build.batch_id AS build_batch_id, build.module_id AS build_module_id, build.copr_dir_id AS build_copr_dir_id, build.scm_object_id AS build_scm_object_id, build.scm_object_type AS build_scm_object_type, build.scm_object_url AS build_scm_object_url, build.update_callback AS build_update_callback
FROM build
WHERE build.canceled = false AND build.source_status = 7 AND build.is_background = false ORDER BY build.id ASC
LIMIT 100
Before:
Planning time: 0.814 ms
Execution time: 136.642 ms
(but I even seen several seconds)
After:
Planning time: 72.315 ms
Execution time: 0.968 ms