message filters unreliable during message pickup, otherwise they work
Filters *unreliably* sort the mail into their target files. I have reconstructed the filters from scratch twice, both times with identical, unpredictable results: each filter works properly on the inbox when tested, but each filter only works *sometimes* in the normal course of getting (IMAP) and sorting mail. When getting a batch of mail, some messages are sorted, while others are not. When testing the same filters on the same (still unsorted but already picked up) messages, those same messages are recognized and sorted correctly. The question is: Why are the filters not working reliably during message pickup?
The mail server is running "Debian stable" Dovecot. It seems to work well; I'm not *missing* any messages, but they're not always getting into the right folders. Instead, some messages, and sometimes quite a few messages, may remain in the inbox. I surmise that the problem is in Thunderbird, where somehow the downloading process somehow undermines the sorting process. A queuing issue? A communications-with-Dovecot issue? (The server is in Paris and I'm in North America, but there doesn't seem to be any undue latency that I can detect. The server is not very busy, that's for sure.)
In case it helps: I filter mostly on `DKIM-Signature`, `Authentication-Results`, and `Received` header entries. In a couple of cases, I use `Body`. I'm almost always using "match any" (as opposed to "match all").
所有回覆 (3)
> I filter mostly on `DKIM-Signature`, `Authentication-Results`, and `Received` header entries.
Please give some examples of each
I copied (and redacted) these entries from my msgFilterRules.dat:
condition="OR (\"Sender\",contains,xxx@googlegroups.com)" condition="OR (\"reply-to\",contains,xxx)" condition="OR (subject,contains,:/var/log/apache2/*.log)" condition="OR (\"dkim-signature\",contains,xxx)" condition="AND (subject,contains,ch_data_update) AND (subject,contains,FAIL)" condition="OR (subject,contains,routerReboot)" condition="OR (\"dkim-signature\",contains,xxx.com)" condition="AND (subject,contains,ch_data_update) AND (subject,contains,GOOD)" condition="AND (subject,contains,ch_b2 ) AND (subject,contains,GOOD)" condition="AND (subject,contains,ch_b2 ) AND (subject,contains,FAIL)" condition="OR (\"dkim-signature\",contains,xxx.com)" condition="AND (\"received\",contains,xxx.org)" condition="OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xx.org) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx) OR (\"dkim-signature\",contains,xxx.com)" condition="OR (subject,contains,bug-gnu-emacs)" condition="AND (subject,contains,live) AND (\"dkim-signature\",contains,substack.com)" condition="OR (\"dkim-signature\",contains,xxx.org) OR (\"dkim-signature\",contains,senate.gov) OR (\"dkim-signature\",contains,xxx.us) OR (\"dkim-signature\",contains,email.assembly-mail.state.ny.us) OR (\"dkim-signature\",contains,mail.house.gov)" condition="OR (subject,contains,[termux/)" condition="OR (\"dkim-signature\",contains,ffmpeg.org)" condition="OR (\"dkim-signature\",contains,xxx.com)" condition="OR (\"dkim-signature\",contains,xxx.com)" condition="OR (\"dkim-signature\",contains,ffmpeg.org)" condition="OR (\"x-original-to\",contains,xxx@xxx.com) OR (\"received\",contains,xxx.eu) OR (\"authentication-results\",contains,xxx.me) OR (\"received\",contains,xxx.com.tr) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx) OR (\"arc-authentication-results\",contains,xxx.gappssmtp.com) OR (\"arc-authentication-results\",contains,shop) OR (\"received\",contains,ru) OR (\"received\",contains,hu) OR (\"received\",contains,in) OR (\"arc-authentication-results\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx.sa.com) OR (\"dkim-signature\",contains,xxx.ro) OR (to,contains,xxx@xxx) OR (\"x-original-to\",contains,xxx.com) OR (to,contains,xx@xxx) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx-onmicrosoft-com.xxx.gappssmtp.com) OR (subject,contains,xxx) OR (\"dkim-signature\",contains,xxx.com) OR (\"dkim-signature\",contains,xxx.net) OR (\"dkim-signature\",contains,xxx.xxx.gappssmtp.com) OR (\"dkim-signature\",contains,xxx.com) OR (body,contains,xxx) OR (body,contains,xxx) OR (\"dkim-signature\",contains,xxx.com)" condition="OR (\"Sender\",contains,xxx)" condition="AND (subject,contains,[xxx])" condition="OR (to,contains,logcheck@) OR (subject,contains,[xxx]) OR (subject,contains,cron <root)" </p>
Is anyone even working on this? I've heard nothing, and I'm getting ready to abandon Thunderbird altogether. If anyone knows what's going on, now would be a good time to speak up.
Today, *everything* was automatically sorted into the "delete" directory. I've had to disable filtering altogether. The venerable Unix "mail" utility is now more usable than Thunderbird is, despite "mail"'s ancient origin, its ongoing obtuseness, its infamous clunkiness, and its command-line interface. Why? Because "mail"'s behavior is consistent. Thunderbird's behavior is not.
After benefiting from decades of satisfactory performance from Thunderbird, I'm saddened that it is in such bad shape. Sigh. Decay and death are features -- not bugs -- of spacetime, at least in this universe.