It's generally a good idea to upgrade (update) all of the modules *before* you try the core upgrade.
Also, make sure that any of your development, alpha, or beta modules, actually end up at the right version. I don't know if it still does it (probably not), but in the past, drush would allow it to "update" to the non-development version of the module, which might be a significant downgrade. It's handling of versions has gotten a lot better in recent releases, so this may no longer be an issue, but you should still watch your versions.
Luke
On Mon, 11 Jul 2011, Ms. Nancy Wichmann wrote:
Any time you upgrade any module, you may temporarily receive messages until you do the update.php. This is especially true if there are schema or theme changes. I don't know if there are any between 6.16 and 6.22. All the interim releases are still available on DO, so you can always go back and do smaller changes. I always test updates on a local copy of the site to make sure that, no matter how well tested, they don't break MY site. This is why I carefuly read the security announcements and don't run the Update module on my live sites. Nancy Injustice anywhere is a threat to justice everywhere. -- Dr. Martin L. King, Jr.
From: Chris G
I just recently tried to upgrade a Drupal 6.16 installation to the recommended 6.22. It fell in a crumpled heap! I did the upgrade using drush and it produced loads of warning messages about disabled modules because the 'module wasn't compatible with the new version' and also did some database changes which I'm pretty certain was what broke the system completely.