Why is Sieve trying to re-compile global scripts?

E.B. emailbuilder88 at yahoo.com
Wed Mar 11 01:33:35 UTC 2015


> > > I have some global scripts that were running nicely.
> > >
> > > Then I opened one in an editor and (probably, but not 100% sure)
> > > mindlessly saved the file, even though I hadn't made any changes.
> > >
> > > Shortly after, Sieve errors started showing in the log:
> > >
> > > Error: 4k5JA74R/1TlIwABG/SpMA: sieve: binary save: failed to create temporary file:
> > open(/usr/local/var/dovecot/sieve/script2.svbin.example.com.4139.) failed: Permission denied...
> > > Error: 4k5JA74R/1TlIwABG/SpMA: sieve: The LDA Sieve plugin does not have permission to save global
> > Sieve script binaries; global Sieve scripts like `/usr/local/var/dovecot/sieve/script2.sieve'
> > need to be pre-compiled using the sievec tool
> > >
> > > Well, OK, is it going by the timestamp on the files?  Fine.  I recompiled
> > > it by hand.  Yet, I STILL got these errors!
> > >
> > > I triple and quadruple checked that the timestamp on the svbin files was
> > > more recent.  And Sieve was only complaining about one of the two
> > > scripts in the directory.
> > >
> > > I restarted dovecot.  No change.
> > >
> > > So I removed read permission on the .sieve files and only left read
> > > permission on the .svbin files.  THIS WORKED.  No more error.
> > > I can live with that, but why was it not complaining before, why was it
> > > only complaining about one of my scripts and why would it complain
> > > at all when the timestamps on the svbin should have indicated on
> > > compilation is needed?
> >
> > I've heard about this problem before. Do you have the opportunity to
> > test this with the 0.4.7.rc1 release? That adds a few extra debug lines
> > (shown when mail_debug=yes) that would indicate why Sieve is thinking
> > the global script is not up-to-date.
>
> Yes, I do as a matter of fact.  I was just going to put in the RC in
> order to answer your email on the thread about the RC.  Don't have the
> full answers yet, but when I installed the RC and restarted, I now get
> an error where Sieve doesn't like that I won't give it read permission
> on the .sieve file, so now I'm back to square one with this particular
> issue.
>
> OTOH, regarding my earlier post about the RC ignoring seive files, at
> least it is seeing global scripts (or trying to).  Not sure about
> personal scripts yet.
>
> Error: TiQJHH2X/1S5UuAAM/SpMA: sieve: file script: Failed to open sieve script:
> open(/usr/local/var/dovecot/sieve/script1.sieve) failed: Permission denied...
>
> I will do some more testing and report what I find.

I gave read permission to the .sieve files and the same
original error happens as with .0.4.6.  Now it's complaining
about both scripts in my global directory.  That it was
working without these errors for a while and then complained
only about one of the scripts, now both scripts seems to say
something but I'm not sure what.  Maybe I'll try to recreate the
files for fun.

I'll test personal scripts again too...


More information about the dovecot mailing list