MSMQ Inconsistent State After Restart

3.8k views Asked by At

I'm seeing a really strange error that I'm having a difficult time tracking down. I think its related to my configuration of Rhino ESB, though I'm not sure if RSB is actually causing it, so I figured I'd ask and see if anyone else has come across this in any other usages of MSMQ.

I'm using RSB as a client in a web app (ASP.NET, the client runs in the background). The client talks to a windows service via the MSMQ binding for RSB. Restarting the service never appears to have an effect on MSMQ, neither does restarting IIS by hand. However, whenever I actually restart the computer itself, MSMQ always refuses to start back up, claiming that a "queue is in an inconsistent state". Attempting to start MSMQ manually results in the same error, effectively rendering the MSMQ install completely useless. The only way to solve it is to actually remove then reinstall MSMQ.

The only information I've found via the almighty Google are references to a problem in MSMQ 2.0 (this problem is occurring in MSMQ 4.0). I've verified that Dispose is being called on on the bus at shutdown, in both the service and the web site.

Does anyone have any idea why this could be occurring? Thanks!

4

There are 4 answers

0
Roy Dictus On

My team is experiencing a similar issue, with MSMQ getting called by NSB 2.5. The issue came up recently after Infrastructure moved our VM to another physical server and for some reason lowered available RAM. We think the issue may be memory-related.

EDIT After a week of no more issues with this, I can confidently say that raising RAM on the server solved our MSMQ's "Inconsistent state" issue. Mind you, we did have to re-install MSMQ first -- but the issue never came back, and before the RAM update the issue popped up every 2 days.

0
JonathanC On

Regularly on Windows 2008RC2, MSMQ cannot start after reboot.

The two regular issues for me are:

"The Message Queuing service cannot start because a queue is in an inconsistent state" and "The dependency service does not exist or has been marked for deletion"

Sometimes, the following has helped (although we are seeking a more solid answer)

  1. rename msmq folder to msmq_old
  2. net stop wuauserv
  3. net stop bits
  4. Delete “%windir%\softwaredistribution” directory
  5. Reboot

This has occurred 5 times this year, and each time, a variety of the above with plenty of reboots.

Sometimes, we revert to Remove Feature / Add Feature, however you may get yourself in a loop. As it boots up, a rollback occurs in the windows update service, so the Feature is never uninstalled, and the problem is never repaired.

Following the steps above can help with that.

0
ini18 On

In my scenario I've been able to fix "queue is in an inconsistent state" error after MSMQ service restart. Turns out the computer name was too long, so changing computer name to a name with less than 15 characters fixed the issue.

0
Prashanth Patali On

I faced the same issue on Window 2008 Server (Virtual Machine). Although the environment was not related to rhino tools.

The error in the event log: "The Message Queuing service cannot start because a queue is in an inconsistent state. For more information, see Microsoft Knowledge Base article 827493 at support.microsoft.com."

As Roy pointed out, this is happening every 2-3 days. Every time we would follow the steps below to recover - instead re-installing the MSMQ.

1) Stop all applications and services that uses MSMQ.
2) Kill the mqsvc.exe from the Task Manager
3) Go to C:\Windows\System32\msmq\storage and delete any .mq files
4) Start the MSMQ Service
4) Start your application