Hundreds of emails stuck in progress
After yesterday's update, which upgraded bundled Exim to 4.100, we are experiencing issues with outgoing deliveries from various servers.
All of these mail servers have MailScanner Front-End v10.00 installed and MailScanner v5.4.4.
Our investigation resulted in finding, through Exim's mainlog, that the spool file for all the messages is missing, and more specifically, the file messageid-D.
We have already checked the spool and Exim folders' ownership and permissions, and they are set properly.
-
We are experiencing a similar situation on WHM 138.0.6.
2 -
As I see it, the possibility of such an issue occurring has already been described here: https://support.cpanel.net/hc/en-us/community/posts/43187553265943-Exim-configuration-rebuild-fails-when-Mailscanner-is-installed
However, cPanel has not provided any response for 8 days.1 -
Exact same symptoms. Disabeling Mailscanner resumes exim queue albeit with standard spamassasin setup One of our other servers on 136.0.39 is still functioning so somthing changed on 138.0.6 for us atleast or there is a specific package conflict. We are monitoring if 136.0.39 stays operational.
But seeing as MSFE is no longer maintained I guess its finally farewell to it as I am not seeing any new maintainer picking it up and I doubt WebPros wants to burn there hands on that. I am going to contact my Datacenter reps and source alternatives.1 -
I'm having the same issue and it looks like Cpanel has responded ...
But I have no idea how to update Mail Scanner yet - also it looks like someone is developing a Open-source version of MSFE called MSFE-NG ... https://github.com/inalto/msfe-ng/tree/main
1 -
Thanks for sharing.
As much as we love MSFE I feel this is the moment for us personaly to retire it.
I see MSFE-NG is now using Claude for code dev or maintaining it as it is listed as contributor.
I have nothing against A.I we operate our own company with it but I am not confident that we are at the level that integrating Claude in the development process of security focused assets on production is a choice I can deem safe from a risk management standpoint.
We are moving ahead with Immunify:Email addon as we sadly already had to replace CXS in the past with Immunify360. I am probably not going to enjoy it but I will live with it.If WebPros ever decides to takeover MSFE I will jump back in a heartbeat.
Not how I planned to end my week for sure.1 -
Same here without solution yet
have to disable MSFE and activate the built in spamassassin for now
0 -
I've done the same, but rather than disable, I've remove MSFE totally as it's no longer support where Spamassassin is.
0 -
MSFE is no longer supported software, so if that's what's causing the issue it would be best to disable that.
0 -
The most serious issue is that all emails sent or received before disabling MFE are lost and cannot be recovered.
Furthermore, the people who sent the emails do not receive any notification that the email was not delivered.0 -
This is not an Exim or spool format change — it's a Perl version-comparison bug in MailScanner's startup code. MailScanner detects the Exim version to decide whether Exim uses the long message-ID format (introduced in Exim 4.97):if ($ver >= 4.97) {
>= is a numeric comparison, and Perl numifies the string "4.100" to 4.1, which is less than 4.97. So MailScanner falls back to the old short-ID spool handling, files every scanned message into the wrong split-spool subdirectory (input/0/), and Exim never finds it. You can verify the Perl behavior yourself:
$ perl -e 'print "4.100" >= 4.97 ? "new format\n" : "old format (bug)\n"'
old format (bug)Fix: edit /usr/mailscanner/usr/sbin/MailScanner (ConfigServer install; for a stock MailScanner install the file is /usr/sbin/MailScanner) and replace the line
if ($ver >= 4.97) {
with
my ($vmaj, $vmin) = $ver =~ /^(\d+)\.(\d+)/;
if (defined $vmaj && ($vmaj > 4 || ($vmaj == 4 && $vmin >=
Or a quick one with backupperl -i.bak-exim4100 -pe 's/^(\s*)if \(\$ver >= 4\.97\) \{/$1my (\$vmaj, \$vmin) = \$ver =~ \/^(\\d+)\\.(\\d+)\/;\n$1if (defined \$vmaj && (\$vmaj > 4 || (\$vmaj == 4 && \$vmin >= 97))) {/' /usr/mailscanner/usr/sbin/MailScanner
Then restart MailScanner (systemctl restart MailScanner — a Messages already misfiled can be requeued with/usr/msfe/msreq.pl (ConfigServer) or by moving the -H/-D pairs back to the proper spool subdirectory and running exim -qff.
Tested on a standby server and works fine, a few dozends more to go
Upstream MailScanner 5.5.3 has the same bug — tracked as MailScanner/v5 issue #717.
6 -
Thank you so much!!! It worked perfectly.
0 -
Thank you!
0 -
Nickgr thank you very very much!!
0 -
Thank you, nickgr! This was very helpful.
0 -
Thank you!!
0 -
nickgr thank you very much!
0 -
nickgr thank you!
0 -
this worked on my servers
perl -i.bak-exim4100 -pe 's#^([ \t]*)if \(\$ver >= 4\.97\) \{#${1}my (\$vmaj, \$vmin) = \$ver =~ /^(\\d+)\\.(\\d+)/;\n${1}if (defined \$vmaj && (\$vmaj > 4 || (\$vmaj == 4 && \$vmin >= 97))) {#' /usr/mailscanner/usr/sbin/MailScanner
0 -
FAO: Cpanel support...
The code you provided on this article:
https://support.cpanel.net/hc/en-us/articles/43420413359639-Messages-stuck-in-Exim-queue-after-update-to-cpanel-exim-4-100-when-MailScanner-is-enabled... has unescaped some of the characters in the fix from nickgr, so it doesn't work.
Perhaps worth linking back to this discussion so that viewers can find the original code fix and apply it in cases like this?nickgr Thanks for supplying the fix. Saved the day...
1 -
Martin Smallridge - use nickgr's perl line, it has the complete thing for you!
Here's the full line:
my ($vmaj, $vmin) = $ver =~ /^(\d+)\.(\d+)/;
if (defined $vmaj && ($vmaj > 4 || ($vmaj == 4 && $vmin >= 97))) {1 -
Thanks NikGR, life saver. What's the consensus on my beloved Mailscanner FE then, find something to replace it with moving on? The MailControl and seeing that things go through and get spam marked etc is sooo helpful!
0 -
Yes, thanks NikGR, and Jason for posting the full line -- without that, it of course kept failing.
So sad that MailScanner FE was abandoned. At least having it running again for now is nice, but I imagine at some point an alternative must be found.
I heard rumous that someone is working on MailScanner-NG (next generation)? But according to https://github.com/MailScanner/v5/issues/714, it seems development on MailScanner v5 has stalled too....
What are folks looking to move to, is a good question.0 -
We’re seeing something similar after the Exim update. Checking the Exim and MailScanner logs closely seems like the best place to start, especially around when the spool files disappear.
0 -
Also belated thanks to NikGR and Jason for providing the excelent answers.
Unfortunately for us we had to replace the software regardless due to the risk of running into future problems.
Not why I reply however on this thread but wanted to provide some feedback on one of the possible software alternatives for those that are planning to replace MSFE, Mailscanner as well.
Previous in this thread I said we choose Immunify:Email addon because we already used immunify 360 I regret to say that we had to abbandon that idea rather quckly when I learned that it has no option for White, blacklisting of adresses, domains or wildcard exentions from inside the interface.
Furthermore quarantaine is reserverd for catch all adresses or delivery to non existing boxes and will not contain any actual send spam those are delivered to the spamfolder of accounts directly for the clients to review instead and in addition what is quarantained has no option to download messages or forward only to release to client.
Header information for those message is visible but the bayes score evaluation is only visible in a tiny box all cramped together requiring external software to reformat it to easy readable output. Unlike MSFE where you could see it line by line. And to us it is pretty pointless feature to only review bayes score of messages to a catchall or non existent box because those are never going to be released by us we only care about the receive clean mails, low, high scoring spam, that are received because that is what we can actually train filters on.
While these features might not be needed by everyone for us it has made it unworkable. This is all absolutely my own fault due to the urgency of the matter I did not do my full inquiry on basic filter functionality. I assumed wrongly that we would have functions that even people without IT knowledge know of and because the underlying engine rspamd does have these functions. But instead it seems to be relying almost entirely on AI and external filter list companies and is missing to us crucial interface options to the underlying engine.
We will thus shortly be switchting over to MagicSpam Pro and I sincerily hope that is the last mgration for this year. This is not to reflect poorly on said product as I am sure there is a market for it but to give some insight of potential limitation in your environment with it.0 -
ITHKBO - Thanks for sharing that for those of us who have been curious and looking at where we might need to go next. It's great when this community starts to share, especially in regard to issues that cPanel either cannot or will not resolve. Last thing I want to do is invest money in something that isn't really a comparable solution. I'm hoping that someone picks up the MSFE torch from Chirpy's version, and I would do so myself if I were a good programmer.
1 -
We installed MSFE-NG and its doing what we need, gets updates quite often: https://github.com/inalto/msfe-ng
0 -
Leading on from this issue we were carrying out some server maintenance and picked up that there were a bunch of emails in the exim queue from the time we experienced this problem.
Within WHM "Mail Queue Manager" I selected all messages and attempted to delete them. However; all I get is the following in the logs and the emails are never deleted.
2026-10-04 13:44:42 cwd=/usr/local/cpanel/whostmgr/docroot 6 args: /usr/sbin/exim -C /etc/exim_outgoing.conf -v -Mrm 1x56X8-0000000FI4k-0AiV
2026-10-04 13:44:42 1x56X8-0000000FI4k-0AiV Spool file 1x56X8-0000000FI4k-0AiV-D not found
2026-10-04 13:44:42 cwd=/usr/local/cpanel/whostmgr/docroot 6 args: /usr/sbin/exim -C /etc/exim_outgoing.conf -v -Mrm 1x56WS-0000000FI1w-0UEo
2026-10-04 13:44:42 1x56WS-0000000FI1w-0UEo Spool file 1x56WS-0000000FI1w-0UEo-D not foundFrom what I can make out when we were trying to figure out what was going on, the emails are in incorrect folders?
Anybody know how I can delete all these stale messages? I have root access.
Thank you.
0 -
exim -Mrm <message-id> [<message-id>
Then rebuild the spool directories:
/usr/local/cpanel/scripts/exim_tidydb
1 -
Thanks Chris, appreciated.
0 -
After a month, I think we can sum up the situation: Keeping mailscannerFE installed is very dangerous. When the problem occurred, I faced huge issues with clients, and quite a few emails were completely lost. cPanel didn't address the problem; only the community did. Keeping it installed is unprofessional and exposes you to enormous risks. Consider the alternatives. Unfortunately, nothing is as convenient as mailscannerFE. I opted for a Proxmox Mail setup upstream.0
Please sign in to leave a comment.
Comments
30 comments