The KTMRM service may re-enlist every five seconds on a Windows Server 2008-based computer

Article translations Article translations
Article ID: 947301 - View products that this article applies to.
Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:
322756 How to back up and restore the registry in Windows XP and Windows Vista
Expand all | Collapse all

SYMPTOMS

You view the log file of the KTMRM service on a Windows Server 2008-based computer. You notice that the log file shows that the KTMRM service tries to re-enlist every five seconds.

CAUSE

This problem occurs if there are unresolved Kernel Transaction Manager (KTM) transactions when the system preparation tool runs to prepare the computer for imaging. After you deploy the image, the KTMRM service reports that these unresolved transactions to KTM. However, the original Distributed Transaction Coordinator (DTC) that is used for the transactions is not available. Therefore, the KMTRM service tries to re-enlist every five seconds.

RESOLUTION

To resolve this problem, follow these steps:
  1. Stop the KTMRM service. To do this, follow these steps:
    1. Click Start, click Run, type cmd, and then click OK.

      If you are prompted for an administrator password or for confirmation, type your password, or click Continue.
    2. Type the following command at the command prompt, and then press Enter:
      net stop ktmrm
  2. In Windows Explorer, delete the Ktmrm.log file.

    Note The Ktmrm.log file is in the following folder:
    %windir%\system32\msdtc
  3. Start the KTMRM service. To do this, follow these steps:
    1. Click Start, click Run, type cmd, and then click OK.

      If you are prompted for an administrator password or for confirmation, type your password, or click Continue.
    2. Type the following command at the command prompt, and then press Enter:
      net start ktmrm

MORE INFORMATION

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

To determine whether the KMTRM service is trying to re-enlist every five seconds, create a location and a name for the KTMRM trace log file, and then enable KTMRM tracing. To do this, follow these steps:
  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate the following registry subkey, and then click it:
    HKLM\Software\Microsoft\MSDTC\Tracing\Output
  3. Right-click Output, point to New, and then click String Value.
  4. Type TraceFilePath, and then press ENTER.
  5. Right-click TraceFilePath, and then click Modify.
  6. In the Value Data box, type a location for the trace file (For example, type c:\<PathOfFile>\dtctrace.), and then click OK.

    Note The value of the TraceFilePath registry entry must contain the full path of the file, and the directory must already exist.
  7. Locate the following registry subkey, and then click it:
    HKLM\Software\Microsoft\MSDTC\Tracing\Sources
  8. Right-click Sources, point to New, and then click DWORD Value.
  9. Type TRACE_KTMRM, and then press ENTER.
  10. Right-click TRACE_KTMRM, and then click Modify.
  11. In the Value Data box, type 4, and then click OK.
  12. On the File menu, click Exit.
  13. After you modify the registry entries, you must restart the KTMRM service.
Depending on the value that you set for the TRACE_KTMRM registry entry in step 11, the trace file can record various types of information, as follows:
  • Value 0 means "None."
  • Value 1 means "Errors."
  • Value 2 means "Warnings."
  • Value 3 means "Info."
  • Value 4 means "Verbose." Use this value for the TRACE_KTMRM registry entry to obtain the "Sleeping for 5 seconds" trace message.
If the TRACE_KTMRM registry entry does not exist or if this registry entry has a value of 0, tracing is not enabled.

Note The log file may become very large if you use verbose tracing. You should use verbose tracing only for about 20 minutes to check whether the KTMRM service receives the "Sleeping for 5 seconds" messages. Afterward, set the value of the TRACE_KTMRM registry entry to 0 to disable tracing, and then restart the KTMRM service.

Properties

Article ID: 947301 - Last Review: January 28, 2008 - Revision: 1.2
APPLIES TO
  • Windows Server 2008 Standard
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Datacenter
Keywords: 
kbexpertiseinter kbtshoot kbprb KB947301

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com