I know this thread is turning into a "me too" fest, but I just thought I'd add that -
a) I had this same problem
b) I was upgrading from 6.0.5 -> 7.0.0 and still had the problem
c) Replacing main.cf from a backup FIXED all of my problem
d) I noticed the problem while doing the upgrade on a test server, and my typical first pass of testing is to check the output of zmcontrol status, send an email to an email address on another server, and then send an email to an address on the test server. zmcontrol status was fine, the outgoing message was fine, but the incoming message didn't work. Keep in mind this is a test server with production domains on it, so you can't send a message to it from a real email server, but you can send an email to any of the domains on the test server from the test server itself, since postfix recognizes them as domains local to the server and routes the email to the appropriate account on the test server, rather than routing it to the real production server with the same domains and accounts on it. What happened in this case was that the email went out to the REAL email account on the production server, rather than looping back to the account on the TEST server, therefore my TEST server wouldn't pass the "receiving mail" test. This was strange behavior, and was caused by the fact that since main.cf was blank, postfix didn't recognize the domains as local to the server, and therefore assumed it needed to route it externally and therefore ended up on the production server.
e) Figuring that maybe it was just the additional domains that were a problem, I sent a test message from the
admin@mail.mydomain.com account to itself (mail.mydomain.com being the server name), which resulted in an error in zimbra.log of "mail for mail.mydomain.com loops back to myself".
Just thought I'd add some of my experiences in hopes that someone with my symptoms finds this thread more easily.