So, WordPress 1.5.2 was released recently — good news, right? Normally, yes :). By the sounds of it, this was mostly a bugfix/security release, but it sounded like a good idea. I went through the upgrade process this afternoon and things seemed to be ok, at first. After uploading the new files, I loaded the home page and it seemed fine.
I should have tried something more involved than just loading the home page — as I discovered a bit later, any link within the blog would just show the home page’s entries again. Or, put another way, suppose that the home page hypothetically has three entries, “A”, “B”, and “C”. If I were to click on the permalink (the title) for “A”, I should see just that entry, plus the comments box and any existing comments. However, after doing so, I just saw the same entries as if I was on the home page (“A”, “B”, and “C”) even though the URL was that of entry A’s permalink (/archives/yyyy/mm/dd/post-name/).
Other pages within the site acted similarly — even a search query would return the same entries as the homepage. Interestingly enough, the sidebar did say “You have searched the archives for…”, as if I had done a search, so it wasn't literally showing me the home page again. Not sure what to do at this point, I took the Windows approach — a restart; I went through the upgrade process again, being careful to disable my plugins beforehand, delete the old files before uploading the new ones, and running the upgrade script afterwards. Still, I had the same result.
I was a bit cheesed off at that point and I wasn't sure what else I could try. As a last idea, I tried rebuilding my .htaccess file (in Options → Permalinks) but that had no effect. In the end, I just downgraded back to 220.127.116.11. And, everything is fine again. All that aside, I don't want to give the impression that I have anything less than complete respect for the WordPress team — their work is top-notch and they have a great product. For all I know, maybe this was a typo in the code somewhere or perhaps a small mistake on my part.