Applies planTwinMerge inside the version-change transaction. Never throws and never
aborts: a rejected upgrade leaves the whole database unopenable, which is far worse than a
twin drawn twice — a failed read or write is logged, its error event cancelled (uncancelled,
it aborts the transaction), and the upgrade goes on with the twins it could not merge.
Applies planTwinMerge inside the version-change transaction. Never throws and never aborts: a rejected upgrade leaves the whole database unopenable, which is far worse than a twin drawn twice — a failed read or write is logged, its error event cancelled (uncancelled, it aborts the transaction), and the upgrade goes on with the twins it could not merge.