Skip to content

Age Seems To Be Interpreted Differently At Different Times #153

@ghost

Description

I have the following delivery config:

$cache = "%h/.fdm.d/seen"
$key = "%[message_id]"
cache $cache expire 1 month

..accounts...

action 'deliver' maildir "%h/mail/%a"
action 'keep' keep
action 'drop' drop

match age > 1 month action 'drop'

match not string $key to "" {
	match in-cache $cache key $key action keep
	match all action to-cache $cache key $key continue

	match matched action {'deliver' 'keep'}
}

match unmatched action 'drop'

However, I'm receiving mail in my mailbox which I've received before. For example I woke up this morning to e-mails in my inbox from October 14th and 15th. My best guess at what's happening is that there's a mismatch between "1 month" (the cache expiry) and "1 month" (the rule to drop mail older than a month.) Maybe 1 month is being considered 28 days (4 weeks) in the cache? It's not the end of the world, but it's a bit annoying.

Incidentally: I've noticed that fetching mail with this config on large mailboxes is quite slow. Is the cache lookup linear or something like that?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions