CouchDB Upgrade Utility: Recovering from Mixed-State Databases After an Interrupted 3.x to 4.x Transition
When moving a CouchDB cluster from 3.x to 4.x, the _upgrader REST endpoint rewrites database files in place while the node is offline. If the process is interrupted—by power loss, a kill signal, or manual termination—some .couch files may already be in the new format while others remain pre-upgrade. The result is a mixed-state data directory that can prevent