On Thu, 2010-11-18 at 14:27 -0600, Mike Abbott wrote:
Also note that because of a change in how (upcoming) v2.0.8 checks if imap/pop3/lmtp has been started from command line, version_ignore=yes is effectively always enabled for them when older master process is running.
I don't understand this. Can you please elaborate? Thanks.
In <= v2.0.7 imap, pop3 and lmtp does getenv("GENERATION") at startup. If that's NULL, they assume that they're running standalone and don't do any version checks.
But this environment could already be set, because Java uses it also. So I changed >= v2.0.8 to do getenv("DOVECOT_CHILD_PROCESS") != NULL check instead.
Now the problem is that if you have v2.0.7 dovecot master running, it doesn't set DOVECOT_CHILD_PROCESS environment. Then if you upgrade imap executable to v2.0.8 it thinks that it's running standalone because that environment isn't set. It'll probably fail with:
Nov 18 20:40:57 imap: Error: Fatal: USER environment missing