Exchange Server administrators sometimes face a situation where the users complain that the emails are not coming in or the sent emails are not reaching the senders. This issue usually happens when the messages stuck in queue in Exchange Server. In this article, we will be discussing the reasons for the Exchange messages stuck in queue issue and see how to resolve it.
Causes behind the Exchange Messages Stuck in Queue Issue
There are a number of factors that could cause the emails stuck in queue issue in Exchange Server. Some common ones are:
- Network Issues
The server could have problems in reaching the destination of the message. This could happen due to misconfiguration or other issues with the network.
- Exchange Server Misconfiguration
Misconfiguration in the transport rules, send/receive connectors, or DNS could cause such an issue.
- Performance Issues
If the server is overloaded, then it can cause delays and backlog in the processing, causing the entire process to slow down.
- Corrupted Database
Corruption or any other issue with the mailbox database or transport database can also lead to the messages being stuck in the queue. This happens because the destination cannot be accessed or there is a problem with the transport service database.
- Outdated Server or OS Updates
If the server or the operating system lacks the latest updates, then this could lead to performance issues, security issues, and also unexpected behavior, which could cause messages being stuck in queue issue.
How this Issue Impacts the Business?
When messages stuck in queue and are not delivered, then this will impact the business in the following ways:
- Delayed communication. Due to this, critical workflows or business operations get interrupted or delayed.
- Users’ frustration when the emails will not reach the destination.
- Server will be strained due to more requests. There would be a backlog on the server which can cause more delays.
- Risks of not meeting the regulatory compliance where time-sensitive communication is a daily part of the business.
Therefore, it is important to swiftly fix the problem to prevent any more harm to the server and the business operations.
Troubleshooting Steps to Fix the Exchange Messages Stuck in Queue Issue
Here are some solutions you can try to resolve the messages stuck in queue issue in Exchange Server:
- The first thing to do is check the Event Viewer. This will give you an indication of the problem and help you in resolving the issue.
- If the server is underperforming, it would result in backlog of messages and slow down the message queue or bring it to a halt. By checking the Performance Monitor of the server, you can find out the problem that might be coming from CPU usage, Memory consumption, network usage, and also load on the hard drives.
- For this reason, you can consider upgrading the server with more CPU (in case of a virtual machine), adding more RAM, or upgrading the network card to Gigabit, or even 10 Gigabit connection. For the storage, you can consider moving to faster disks, such as SAS or SSD drives.
- You should also check the current Cumulative Update (CU) installed for any known issues with the transport services or check the compatibility with a newer update. There might be underlying issues, which could be fixed in a newer Cumulative Update (CU).
- Optimization is crucial as you cannot rely on the demand of the users when the server was created. Some optimization settings in the Exchange Server include the Connection Limits and the Message Retry Interval. You can do the below changes to optimize the Exchange Server message transport, depending on the demand and load of the server.
- The MessageRetryInterval parameter is in the EdgeTransport.exe.config file in the Bin folder of the Exchange Server. The default message interval is 1 minute, which can be found in the file as 00:01:00. After the file is saved, restart the Microsoft Exchange Transport Service for the changes to take effect.
- The SmtpConnectorQueueMessageCountThresholdForConcurrentConnections and MaxPerDomainOutboundConnections settings can be found in the same file. This will modify the threshold of concurrent connections and outbound connections. Same as the Message Retry Interval, the Microsoft Exchange Transport Service will need to be restarted for the changes to take effect.
- If you have a Database Availability Group, try to move all databases on another server, put the server in maintenance mode, wait until the queues are processed, and restart it. Once the operation is complete, remove the server from maintenance and move the databases back.
- There could be instances where the Antivirus or malware application installed on the server is misconfigured. This can lead to delays in processing files or it can even lock the Exchange Server files. You should exclude the Queue folder from scanning. When Exchange Server files are locked by the backup or antivirus software or incompatible software is used, it can lead to corruption of data.
- If the malware engine of the Exchange Server is enabled, you can check the Event Viewer for any event with the ID 5300 or 1106. This could indicate issues (if any) with the malware scanning engine.
- If you have a Database Availability Group (DAG), you should check the health status of the server. This might indicate or even guide you in identifying if there is a problem with database replication or transport services.
You must understand the repercussions of having a corrupt Exchange Server or queue as this might affect the operation of the server. When a third-party software is misconfigured or incompatible, or the Exchange Server is misconfigured, you can end up with corrupted databases or transaction logs, which are essential for the server to run.
How to Recover Data from Corrupt Databases?
If there are corrupted items in your Exchange Server or the Exchange Server is not operating due to failure or misconfiguration, then it will consume a lot of time to troubleshoot the issue. Also, restoring from backup is not an option as it can lead to loss of data. Applications, such as Stellar Repair for Exchange, can reduce the time of data recovery with minimal impact and no data loss. The application can open multiple Exchange Server databases in any state, of any version, and of any size. You will be able to granularly export user mailboxes, shared mailboxes, user archives, disabled mailboxes, and public folders to PST and other file formats. You can also export directly to a live Exchange Server mailbox database with automatic mailbox matching, parallel exports, and priority exports. You can also utilize the tool to export directly to a Microsoft 365 tenant with minimal effort and impact.
Monitoring the Queues
For a reason or another, the message is kept in the queue of the Exchange Server and not passed to the respective mailbox to be delivered to the intended recipients. This means that the message will be kept in the temporary location, until the issue will be resolved and the messages will be automatically routed to the destination. You should monitor the queues as there is some time duration after which the messages would be marked as not delivered.
To check the queue, you can view the Queue Viewer application of Exchange Server, which can be found in the Exchange Toolbox and opened from the Mail flow tools.
You can also view the queue by using the Get-Queue PowerShell command in the Exchange Management Shell (EMS).
Conclusion
As you have seen above, there are multiple things that could affect the delivery of messages in Exchange Server. Therefore, it is important to monitor the Exchange Server - be it standalone or clustered service. We have also identified how such issue can impact the business and how crucial it is to restore the services as soon as possible with minimal damage and no data loss.