The transactions checkpoint file failed to initialize. The file MQTrans.lg1 or MQTrans.lg2 in the Msmq\Storage folder are corrupted or absent.
Checkpoint files must be available for Message Queuing to function properly. To resolve this issue, you must delete the transaction checkpoint files, as well as the QMLog file in the Message Queuing storage directory. This can result in some messages being duplicated. However, this resolution will get the service running as soon as possible and usually without data loss.
Delete transaction checkpoint files
To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.
Important: If you are concerned about data loss, contact Microsoft Customer Service and Support (CSS). For information about how to contact CSS, see Enterprise Support ( http://go.microsoft.com/fwlink/?LinkId=52267).
Delete checkpoint files
To delete checkpoint files:
Caution: Incorrectly editing the registry might severely damage your system. Before making changes to the registry, you should back up any valued data.
Open Windows Explorer and browse to your storage directory. This is typically located under C:\Windows\System32\msmq\storage.
Delete the following files: MQTrans.lg1, MQTrans.lg2, and QMLog file.
Open the Registry Editor. To open Registry Editor, click Start. In the search box, type regedit, and then press ENTER.
Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters.
Click Parameters.
On the Edit menu, point toNew, and then click DWORD (32-bit) Value.
In Name, type "LogDataCreated" and ensure that the value is set to 0.
Close Registry Editor.
Restart the MSMQ Service
To restart the MSMQ Service:
Open the Services snap-in. To open Services, click Start. In the search box, type services.msc, and then press ENTER.
Right-click Message Queuing, and then click Restart. You must restart all the dependent services, as well.
If you are concerned about data loss, contact Microsoft Customer Service and Support (CSS). For information about how to contact CSS, see Enterprise Support ( http://go.microsoft.com/fwlink/?LinkId=52267).
For more information, see Event ID 2064 ( http://technet.microsoft.com/en-us/library/dd337438(WS.10).aspx)
Target | Microsoft.MSMQ.2008.Servers | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Event_ID | 2064 | ||
Event Source | $Target/Property[Type="Microsoft.MSMQ.2008.ServerRole"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.MSMQ.2008.Rule.Alert.Event2064" Enabled="false" Target="Microsoft.MSMQ.2008.Servers" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="Microsoft.MSMQ.2008.ServerRole"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>2064</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.MSMQ.2008.Rule.Alert.Event2064.AlertName"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>