- AND sa.created < :delete_before
- AND NOT EXISTS (SELECT 1 FROM bin_associations ba
- JOIN binaries b ON ba.bin = b.id
- WHERE ba.suite = :suite_id
- AND b.source = s.id)"""
+ AND NOT EXISTS
+ (SELECT 1 FROM policy_queue_upload pqu
+ JOIN policy_queue pq ON pq.id = pqu.policy_queue_id
+ JOIN suite s ON s.policy_queue_id = pq.id
+ JOIN suite_build_queue_copy sbqc ON sbqc.suite = s.id
+ WHERE pqu.source_id = sa.source AND pq.send_to_build_queues
+ AND sbqc.build_queue_id = :build_queue_id)
+ AND (sa.created < :delete_before
+ OR NOT EXISTS
+ (SELECT 1 FROM src_associations sa2
+ JOIN suite_build_queue_copy sbqc ON sbqc.suite = sa2.suite
+ WHERE sbqc.build_queue_id = :build_queue_id
+ AND sa2.source = sa.source))
+ AND NOT EXISTS
+ (SELECT 1 FROM bin_associations ba
+ JOIN binaries b ON ba.bin = b.id
+ WHERE ba.suite = :suite_id
+ AND b.source = s.id)"""