Fait un delete dans ps_product_download lorsque active=0
delete from PREFIX_product_download WHERE active=0 LIMIT 100000;
Plusieurs fois, jusqu'a ce que ça dise 0 record changed
Puis construis ta clé unique
ALTER IGNORE TABLE `PREFIX_product_download` ADD UNIQUE KEY `id_product` (`id_product`);
Attention il te faut revoir tous tes produits virtuels car leur fichier download peuvent avoir changé (a cause du ignore)
Attention2: Ne fonctionne pas en MySQL 5.7+ https://dev.mysql.com/worklog/task/?id=7395