More than ever, I think we should make the snapshot code path clearer by testing tableStreamTypeIsSnapshot once, doing ALL the (comparatively simple) snapshot processing in that fork, and returning early.