In my experience it's best to simply not attempt in-place major distro version upgrades and approach them instead as a backup/reimage/restore (or using an alternate/new machine)
This has been true for me across all distros, and honestly it's a main reason why I only run linux on servers anymore (easy to create a new VM for upgrades, harder to create a new laptop)