Issue Description
I’ve followed the upgrade guide carefully and recreated all missed configuration in the loop. I’ve many redirect rules and sieves script but they don’t seem to work anymore.
Redirect are done in the RCPT_TO stage and they work (I can see in the log that they are handled). However, I couldn’t get the sieve script to work as they used to do before 0.16
The sieve script are listed in the account interface “Sieve Script” section, as “a.sieve” (the name they had before migration). They contains:
require ["variables", "envelope", "regex", "fileinto", "mailboxid", "mailbox", "copy", "subaddress"];
if envelope :regex "to" "^([^+]+)\\+([^+]+)@(.+)$" {
set :upperfirst "folder" "${2}";
fileinto :copy :create "Alias";
fileinto :create "Alias/${folder}";
redirect "[email protected]";
stop;
}
Its “Active” checkbox is on
I’ve tried modifying it and re-saving it, but it doesn’t work either.
The mail are delivered to the expected mailbox but the script is not run (no mention of the script in the log, even in debug log mode). The same script used to work in 0.15.5
Expected Behavior
The user sieve scripts should execute
Actual Behavior
Either the script isn’t executing, or there’s an error but no trace in the logs.
Reproduction Steps
- Set a redirect rule like this:
IF is_local_domain(rcpt_domain) & matches('^fwd\.([^.]+)@(.+)$', rcpt),THEN 'user+' + $1 + '@' + $2 - Try to use the provided sieve script above
- Send yourself a mail to
[email protected]
Relevant Log Output
2026-05-09T17:52:43Z DEBUG SMTP connection started (smtp.connection-start) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaInboundThrottle with id iqbxxgiwabab", key = "match", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 15ms, total = 2
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaInboundSession with id singleton", key = "transferLimit", result = "Integer(262144000)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaInboundSession with id singleton", key = "maxDuration", result = "Integer(600000)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaInboundSession with id singleton", key = "timeout", result = "Integer(300000)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "spfEhloVerify", result = "Constant(Disable)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "spfFromVerify", result = "Constant(Disable)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "reverseIpVerify", result = "Constant(Disable)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageEhlo with id singleton", key = "require", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageEhlo with id singleton", key = "rejectNonFqdn", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageAuth with id singleton", key = "require", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageAuth with id singleton", key = "maxFailures", result = "Integer(3)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageAuth with id singleton", key = "waitOnFail", result = "Integer(5000)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "expn", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "vrfy", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageConnect with id singleton", key = "script", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageConnect with id singleton", key = "script", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageConnect with id singleton", key = "hostname", result = "String(Borrowed("mail.a.com"))"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageConnect with id singleton", key = "smtpGreeting", result = "String(Owned("mail.a.com Stewart ESMTP at your service"))"
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 47, contents = "220 mail.a.com Stewart ESMTP at your service\r\n"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 20, contents = "EHLO gaia.localnet\r\n"
2026-05-09T17:52:43Z INFO SMTP EHLO command (smtp.ehlo) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, domain = "gaia.localnet"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageEhlo with id singleton", key = "script", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageEhlo with id singleton", key = "script", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "pipelining", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "chunking", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "expn", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "vrfy", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "requireTls", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "dsn", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageAuth with id singleton", key = "saslMechanisms", result = "Array([Constant(Plain), Constant(Login), Constant(Oauthbearer), Constant(Xoauth2)])"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "futureRelease", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "futureRelease", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "deliverBy", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "deliverBy", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "mtPriority", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "mtPriority", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "maxMessageSize", result = "Integer(104857600)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "noSoliciting", result = "String(Borrowed(""))"
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 232, contents = "250-mail.a.com you had me at EHLO\r\n250-SMTPUTF8\r\n250-SIZE 104857600\r\n250-REQUIRETLS\r\n250-PIPELINING\r\n250-NO-SOLICITING\r\n250-ENHANCEDSTATUSCODES\r\n250-CHUNKING\r\n250-BINARYMIME\r\n250-AUTH PLAIN LOGIN XOAUTH2 OAUTHBEARER\r\n250 8BITMIME\r\n"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 45, contents = "AUTH PLAIN AGN5cmlsQGtnaS5ieQBiZW5zM3BzeA==\r\n"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageAuth with id singleton", key = "saslMechanisms", result = "Array([Constant(Plain), Constant(Login), Constant(Oauthbearer), Constant(Xoauth2)])"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "a.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "domainId"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "user", domain = 1, collection = "email"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 101, collection = "accessToken"
2026-05-09T17:52:43Z INFO Authentication successful (auth.success) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, accountName = "[email protected]", accountId = 101
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 101, collection = "account"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "domainId"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "domainId"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "domainId"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "expn", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "vrfy", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 37, contents = "235 2.7.0 Authentication succeeded.\r\n"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 26, contents = "MAIL FROM:<[email protected]>\r\n"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageMail with id singleton", key = "isSenderAllowed", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageMail with id singleton", key = "script", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageMail with id singleton", key = "script", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageMail with id singleton", key = "rewrite", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageMail with id singleton", key = "rewrite", result = ""
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageAuth with id singleton", key = "mustMatchSender", result = "Integer(1)"
2026-05-09T17:52:43Z INFO SMTP MAIL FROM command (smtp.mail-from) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, from = "[email protected]"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageRcpt with id singleton", key = "maxFailures", result = "Integer(5)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageRcpt with id singleton", key = "waitOnFail", result = "Integer(5000)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageRcpt with id singleton", key = "maxRecipients", result = "Integer(100)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaExtensions with id singleton", key = "dsn", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "maxMessageSize", result = "Integer(104857600)"
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 14, contents = "250 2.1.0 OK\r\n"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 27, contents = "RCPT TO:<[email protected]>\r\n"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageRcpt with id singleton", key = "script", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageRcpt with id singleton", key = "script", result = ""
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "b.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 2, collection = "domainId"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageRcpt with id singleton", key = "rewrite", result = "String(Owned("[email protected]"))"
2026-05-09T17:52:43Z DEBUG RCPT TO address rewritten (smtp.rcpt-to-rewritten) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, details = "[email protected]", to = "[email protected]"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "b.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 2, collection = "domainId"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "user", domain = 2, collection = "email"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 95, collection = "account"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaInboundThrottle with id iqbxxgjaabqb", key = "match", result = "Integer(1)"
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 6ms, total = 2
2026-05-09T17:52:43Z INFO SMTP RCPT TO command (smtp.rcpt-to) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, to = "[email protected]"
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 14, contents = "250 2.1.5 OK\r\n"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 6, contents = "DATA\r\n"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "maxMessages", result = "Integer(10)"
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 46, contents = "354 Start mail input; end with <CRLF>.<CRLF>\r\n"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 278, contents = "From: Cyril <[email protected]>\r\nTo: [email protected]\r\nSubject: Test\r\nDate: Sat, 09 May 2026 19:52:43 +0200\r\nMessage-ID: <[email protected]>\r\nMIME-Version: 1.0\r\nContent-Transfer-Encoding: 7Bit\r\nContent-Type: text/plain; charset="utf-8"\r\n\r\nTest\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n.\r\n"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "maxReceivedHeaders", result = "Integer(50)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "dkimVerify", result = "Constant(Relaxed)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "dmarcVerify", result = "Constant(Disable)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "DkimReportSettings with id singleton", key = "sendFrequency", result = "Array([Integer(1), Integer(86400000)])"
2026-05-09T17:52:43Z INFO DKIM verification failed (smtp.dkim-fail) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, strict = false, result = [], elapsed = 0ms
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "arcVerify", result = "Constant(Disable)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "addReceivedHeader", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "addAuthResultsHeader", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "enableSpamFilter", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "script", result = "Integer(0)"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "script", result = ""
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "b.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 2, collection = "domainId"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaOutboundStrategy with id singleton", key = "schedule", result = "String(Borrowed("local"))"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "MtaStageData with id singleton", key = "addReturnPathHeader", result = "Integer(0)"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "a.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "domainId"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, id = "SenderAuth with id singleton", key = "dkimSignDomain", result = "String(Borrowed("a.com"))"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "a.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "domainId"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 1, collection = "dkimSigners"
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 4ms, total = 1
2026-05-09T17:52:43Z TRACE Blob write operation (store.blob-write) key = base64:gvfOCtQF35ZeLW1VAWoW3wfFolq/WAiUjxsZRdvJCvI=, elapsed = 0ms, size = 898
2026-05-09T17:52:43Z INFO Queued message submission for delivery (queue.authenticated-message-queued) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, queueId = 306329238508670976, from = "[email protected]", to = ["[email protected]"], size = 1100, nextRetry = 2026-05-09T17:52:43Z, nextDsn = 2026-05-10T17:52:43Z, expires = 2026-05-12T17:52:43Z
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 7ms, total = 5
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 51, contents = "250 2.0.0 Message queued with id 4404cd1c5a01000.\r\n"
2026-05-09T17:52:43Z TRACE Data store iteration operation (store.data-iterate) elapsed = 0ms
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 7ms, total = 2
2026-05-09T17:52:43Z INFO Delivery attempt started (delivery.attempt-start) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "b.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 2, collection = "domainId"
2026-05-09T17:52:43Z TRACE Expression evaluation result (eval.result) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1, id = "MtaOutboundStrategy with id singleton", key = "route", result = "String(Borrowed("local"))"
2026-05-09T17:52:43Z INFO New delivery attempt for domain (delivery.domain-delivery-start) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1, domain = "b.com"
2026-05-09T17:52:43Z TRACE Blob read operation (store.blob-read) key = base64:gvfOCtQF35ZeLW1VAWoW3wfFolq/WAiUjxsZRdvJCvI=, elapsed = 0ms, size = 898
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "b.com", collection = "domainName"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 2, collection = "domainId"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = "user", domain = 2, collection = "email"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 95, collection = "accessToken"
2026-05-09T17:52:43Z TRACE Blob read operation (store.blob-read) key = base64:VZMFv39U0j2h7CgsbC8q8R4cQRjMSCzQUh/cSXytmS4=, elapsed = 0ms, size = 577
2026-05-09T17:52:43Z TRACE Data store iteration operation (store.data-iterate) elapsed = 0ms
2026-05-09T17:52:43Z DEBUG Cache update (store.cache-update) accountId = 95, collection = "email", changeId = 1462, details = [1, 0], total = [2887, 135], elapsed = 0ms
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 95, collection = "account"
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 95, collection = "account"
2026-05-09T17:52:43Z TRACE Data store iteration operation (store.data-iterate) elapsed = 0ms
2026-05-09T17:52:43Z DEBUG Cache hit (store.cache-hit) key = 2, collection = "domainId"
2026-05-09T17:52:43Z TRACE Raw SMTP input received (smtp.raw-input) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 6, contents = "QUIT\r\n"
2026-05-09T17:52:43Z DEBUG SMTP QUIT command (smtp.quit) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846
2026-05-09T17:52:43Z TRACE Raw SMTP output sent (smtp.raw-output) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, size = 16, contents = "221 2.0.0 Bye.\r\n"
2026-05-09T17:52:43Z DEBUG SMTP connection ended (smtp.connection-end) listenerId = "submissions", localPort = 465, remoteIp = 1.1.1.1, remotePort = 49846, elapsed = 177ms
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 15ms, total = 6
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 8ms, total = 14
2026-05-09T17:52:43Z INFO Message ingested (message-ingest.ham) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1, accountId = 95, documentId = 2981, mailboxId = [0], blobId = "82f7ce0ad405df965e2d6d55016a16df07c5a25abf5808948f1b1945dbc90af2", changeId = 1463, messageId = "[email protected]", size = 1100, elapsed = 23ms
2026-05-09T17:52:43Z INFO DSN success notification (delivery.dsn-success) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1, to = "[email protected]", hostname = "localhost", code = 250, details = "OK"
2026-05-09T17:52:43Z INFO Delivery completed (delivery.completed) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1, elapsed = 0ms
2026-05-09T17:52:43Z TRACE Data store iteration operation (store.data-iterate) elapsed = 0ms
2026-05-09T17:52:43Z DEBUG Task acquired from queue (task-manager.task-acquired) total = 1, details = 1
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 6ms, total = 3
2026-05-09T17:52:43Z INFO Delivery attempt ended (delivery.attempt-end) queueId = 306329238508670976, queueName = "local", from = "[email protected]", to = ["[email protected]"], size = 1100, total = 1, elapsed = 31ms
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 15ms, total = 2
2026-05-09T17:52:43Z TRACE Blob read operation (store.blob-read) key = base64:gvfOCtQF35ZeLW1VAWoW3wfFolq/WAiUjxsZRdvJCvI=, elapsed = 0ms, size = 898
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 16ms, total = 1
2026-05-09T17:52:43Z TRACE Data store iteration operation (store.data-iterate) elapsed = 0ms
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 8ms, total = 2
2026-05-09T17:52:43Z TRACE Write batch operation (store.data-write) elapsed = 8ms, total = 1
2026-05-09T17:52:43Z TRACE Data store iteration operation (store.data-iterate) elapsed = 0ms
Stalwart Version
v0.16.x
Installation Method
Binary (Linux)
Database Backend
PostgreSQL
Blob Storage
Filesystem
Search Engine
Internal
Directory Backend
Internal
Additional Context
Nothing special for this installation. The HTTP server is under nginx proxy (but obviously this things works)
I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.
on
I have searched this support forum (open and closed topics) and confirm this is not a duplicate.
on
I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.
on