One idea: don't swap adder data structures; use one map and access adders directly via a MethodHandle. Will imply that we can no longer have atomic deltas, but the cheaper per-line cost may be worth the increased cost for publishing snapshots and deltas.