G'day,
I've had a problem with one of my Drupal installs for a few weeks and finally worked it out so thought I'd share.
I have a content type that's used as a registration form. Anon users fill it in and then site admins can look through the list of registrations later. Authenticated users cannot create this type, only anonymous users.
The problem was that at a certain point in time, viewing the content stopped working. The content would list OK in a view, but when you clicked on the link to view the actual node, it would give Page Not Found despite the logged in user having every permission under the sun.
I eventually found that because the content was being created by uid 0 (anonymous) it would prevent anyone viewing it (even uid 0!). Changing the node uid's to 1 (or any other uid) fixed the problem, but then any new content had the same issue again. It wasn't always like this so I felt I hadn't found the root cause.
Then after reading a few forum threads I checked the users table and found that there was no uid 0 entry. I checked another of my Drupal installs and saw that it had one so I added it back in. I'm not exactly sure why this one disappeared, but it may have been when I was poking around, noticed the uid 0 entry that looked like erroneous data, and manually deleted it.
All good now.