Had a situation recently where, after a cyrus db error, using reconstruct to repair the db, left many users with the all their folders buit with apparently no e-mails in them.
A quick check of the relavent folders on the server confirmed that all the e-mail was there, just that Mail couldn't see it. We then tried Entourage - it saw the correct number of e-mails, but would not pull them down from the server.
In both cases these were newly created accounts in both apps - so no local caching problems. We had a look using Thunderbird and it had no problem accesing the folders and e-mails! The only way we found to get Mail/Entourage to play ball was to use WebMail to move the e-mails into their own folder (I know it sounds ridiculous but it works!) and then they show up.
We checked what changed when we did this - and as expected the only items that changed were cyrus.index and cyrus.cache in the relevant folder. Now I'm puzzled as we tried an experiment - we deleted the .cache & .index files from another folder that wasn't working properly and then ran reconstruct on that mailbox again. It duly created the 2 files but the same thing, no files. So where was it pulling the cache information from, as I'm guessing that's the problem?
If anyone can enlighten me as to what Thunderbird does differently with IMAP mail that Mail & Entourage don't I'd be very grateful.