implement clearing of later rows who (prior to sync) had unique key values that are used by earlier rows.

refactor the row applier code to make this tractable, and win back most of the performance loss by batching.