So not only delete the record, pack the table, but one also has to reindex in order to get rid of the duplicates?
you can use a filtered index, which it ignores the record cancels to you:
INDEX ON candidateKey CANDIDATE FOR !DELETED() TAG ...
but you must make attention if you recall them with RECALL.
This index it is not ago part of the pool of useful indices for the optimization.