There is also the deleteRecords API specifically for this. It's easier than the retention shrink -> increase dance, as it is a single API call and retention does not kick in immediately. The log segment must roll for retention to apply, either due to size or time.
You have to rewrite the whole topic to do this right? (or do some hacks with compaction if you have unique keys)