We run the free Proxmox at work and you can update the free version from one major release to another, but if you have a cluster, live migration doesn't always work between major releases (causing downtime during upgrades...grrr) and sometimes even between minor releases
For example, while you can live migrate between 4.X and 5.X nodes in a cluster, you *can't* between 3.X and 4.X. I recently started warm upgrades from 4.X to 5.X and it's worked pretty well so far.
The only really bad experience I had with Proxmox was trying to use GlusterFS. The early Proxmox releases had horrendously buggy/old GlusterFS versions that just spectacularly collapsed regularly. When it opened 1 million files in 20 minutes - yes, running out of any spare file handles for the entire system - we abandoned it and just used iSCSI to SANs that were mirrored via drbd instead.