Upgrade tx failed after implementation contract deployed

Hi all,

I ran into a unique scenario. I am upgrading a contract on mainnet and during the migration, the transaction failed. This happened after the new implementation contract was deployed to mainnet and the deployment was saved to the mainnet.json file. My question is, if I call truffle migrate --network mainnet again will it try to deploy and new implementation contract or will it pick up after this and call the upgrade and setCompleted OZ functions? Appreciate any assistance, thanks.

Update: After some more digging into the OZ libs, found that inside the upgradeProxy function call is a wonderful function called fetchOrDeployGeneric. So I decided to let it rip and as expected, the upgrade picked up where it left off and ended up in a successful upgrade.