Originally Posted by guanx
Running programs will not be replaced by remove / copy operations. See unlink(2).
except that upgradepkg etc. are just shell scripts and it's the utilities it will try and run later (which won't be loaded) that will hit problems with library incompatibility.
This incompatibility could happen either way around, though library developers try and keep things backwards compatible wherever possible.
Because of this, it's much more likely for a library to be backward compatible than for a program linked against the old library to be forward compatible with the new library which is why I believe Pat recommends to update the libs first.
Having said that, if you did it in the wrong order, but got away with it, then I don't think you'll need to take any remedial action. You just got lucky.
Personally, I always use the ROOT= and install into a fresh parallel filesystem to avoid these sort of issues when doing these mass updates, which also has the advantage of leaving you with a nice easy backout plan. It means you have to reapply any of your customisations to the new enviroment, but there are ways to make that fairly painless.