For some strange reason, have_posts() seems to be returning false for my custom taxonomies (i.e. in archive.php or taxonomy.php) but only when I'm logged in. So if I visit, e.g. /taxonomy/name/ I get a 404 even though there are posts in that taxonomy. But if I log out, then it works just fine.
Here's an example page:
It works just fine for anonymous visitors, but if I'm logged in, I get a 404. Near as I can tell, this started happening when I upgraded to 3.0. If it matters, the taxonomies are part of a plugin, eidogo-for-wordpress.