Partager via


Event ID 2064 — Message Queuing Logging and Checkpoint Events

Applies To: Windows Server 2008

To provide transaction consistency, Message Queuing logs transaction status changes and incoming messages to a log file (QMLog), and then creates a checkpoint that is written to a separate file. The checkpoint file contains version information, and the QMLog is updated to refer to that version of the checkpoint file as being the current checkpoint.

During initialization of the MSMQ Service, there is a recovery phase for transactional messages where the QMLog file is read. It contains the version information for the most current checkpoint entry in the checkpoint files and then uses the current checkpoint file to perform recovery of transactional messages.

If there is a failure between the time that the checkpoint file was created and when the QMLog was updated with the new version, the QMLog file refers to the earliest checkpoint file version and recovery fails.

Message Queuing uses several checkpoint files to maintain consistency. These checkpoint files are used to perform recovery of transactional messages.

 

Event Details

Product: Windows Operating System
ID: 2064
Source: MSMQ
Version: 6.0
Symbolic Name: EVENT_ERROR_QM_INIT_TRANS_FILE
Message: The transactions checkpoint file failed to initialize. The file MQTrans.lg1 or MQTrans.lg2 in the Msmq\Storage folder are corrupted or absent. Error %1: %2

Resolve

Delete transaction checkpoint files

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.

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 (https://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.

  1. Open Windows Explorer and browse to your storage directory. This is typically located under C:\Windows\System32\msmq\storage.
  2. Delete the following files: MQTrans.lg1, MQTrans.lg2, and QMLog file.
  3. Open the Registry Editor. To open Registry Editor, click Start. In the search box, type regedit, and then press ENTER.
  4. Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters.
  5. Click Parameters.
  6. On the Edit menu, point toNew, and then click DWORD (32-bit) Value.
  7. In Name, type "LogDataCreated" and ensure that the value is set to 0.
  8. Close Registry Editor.

Restart the MSMQ Service

To restart the MSMQ Service:

  1. Open the Services snap-in. To open Services, click Start. In the search box, type services.msc, and then press ENTER.
  2. Right-click Message Queuing, and then click Restart. You must restart all the dependent services, as well.

Verify

Verify that the MSMQ Service is installed and running.

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To verfiy that the MSMQ Service is installed and running:

  1. Open the Services snap-in. To open Services, click Start. In the search box, type services.msc, and then press ENTER.
  2. Locate the Message Queuing service, and then confirm that the value in the Status column is Started.
  3. For further confirmation, run a test application that uses the Active Directory features that you require.

Message Queuing Logging and Checkpoint Events

Message Queuing