Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

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


View products that this article applies to.

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.

↑ Back to the top


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.

↑ Back to the top


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

↑ Back to the top


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.

↑ Back to the top


Keywords: KB947301, kbprb, kbtshoot, kbexpertiseinter

↑ Back to the top

Article Info
Article ID : 947301
Revision : 3
Created on : 1/28/2008
Published on : 1/28/2008
Exists online : False
Views : 561