Microsoft KB Archive/918914

From BetaArchive Wiki

Article ID: 918914

Article Last Modified on 10/18/2007



APPLIES TO

  • Microsoft Systems Management Server 2003



SYMPTOMS

You may experience the following symptoms on a Microsoft Systems Management Server (SMS) 2003 site server:

  • The SMS database is not updated with newly created objects after a discovery interval has passed.
  • Discovery data records (DDRs) are queued in the ddm.box inbox folder.

    Note By default, this folder has the following path:

    C:\SMS\inboxes\auth\ddm.box

  • The ddm.log file contains many error entries that resemble the following:
    *** insert into System_SMS_Assign_ARR (ItemKey, SMS_Assigned_Sites0) values (8851, "SMS:S01") 
    SMS_DISCOVERY_DATA_MANAGER <date> <time> 6436 (0x1924) 
    *** [22001][8152][Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated. 
    SMS_DISCOVERY_DATA_MANAGER <date> <time> 6436 (0x1924)
    *** insert into System_SMS_Assign_ARR (ItemKey, SMS_Assigned_Sites0) values (8851, 
    "SMS:S01") SMS_DISCOVERY_DATA_MANAGER <date> <time> 6436 (0x1924)
    *** [22001][8152][Microsoft][ODBC SQL Server Driver][SQL Server]String or binary 
    data would be truncated. SMS_DISCOVERY_DATA_MANAGER <date> <time> 6436 (0x1924)
    *** insert into System_SMS_Assign_ARR (ItemKey, SMS_Assigned_Sites0) values (8851, 
    "SMS:S01")  SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    *** [01000][3621][Microsoft][ODBC SQL Server Driver][SQL Server]The statement has 
    been terminated.    SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    CDiscoverySource_SQL::UpdateItem - could not execute sql- insert into 
    System_SMS_Assign_ARR (ItemKey, SMS_Assigned_Sites0) values (8851, 
    "SMS:S01")  SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    CDiscoverDataManager::ProcessDDRs_PS - Unable to update data 
    source  SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    STATMSG: ID=2636 SEV=E LEV=M SOURCE="SMS Server" COMP="SMS_DISCOVERY_DATA_MANAGER" 
    SYS=SMS SITE=S01 PID=<pid> TID=<tid> GMTDATE=<date> <time> 
    ISTR0="" ISTR1="" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" 
    ISTR9="" NUMATTRS=0 SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    CDiscoverDataManager::ProcessDDRs_PS - SQL problem detected.  Will retry 
    later.  SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    CDiscoverDataManager::Process - Failed to manage files in inbox.  Will retry in at 
    least 60 seconds    SMS_DISCOVERY_DATA_MANAGER  <date> <time>   6436 (0x1924)
    Note By default, the ddm.log file is located in the C:\SMS\Logs folder.
  • In the contents of the affected DDRs, two SMS_AUTHORITY instances, such as SMS:S01 and SMS:S02, are displayed. For example, XML that resembles the following appears in the affected DDRs:
    BEGIN_PROPERTY
    <17><SMS Assigned Sites><11><128>
    BEGIN_ARRAY_VALUES
    <S01><SMS:S01>
    END_ARRAY_VALUES
    END_PROPERTY
    
    BEGIN_PROPERTY
    <17><SMS Assigned Sites><11><128>
    BEGIN_ARRAY_VALUES
    <S01><SMS:S02>
    END_ARRAY_VALUES
    END_PROPERTY


CAUSE

This problem occurs if the Windows Management Instrumentation (WMI) property on the SMS client contains two or more site codes. In this situation, the following process occurs:

  1. An SQL statement that resembles the following runs to insert the three-character site code into the SMS_Assigned_Sites0 column of the SMS database:

    insert into System_SMS_Assign_ARR (ItemKey, SMS_Assigned_Sites0) values (25912, "SMS:XXX")

    The SMS_Assigned_Sites0 field is four characters wide. In this scenario, the DDR processing operation removes the SMS part from the site code. Therefore, site code information such as SMS:XXX is truncated to XXX.

  2. If the DDR XML contains two SMS_AUTHORITY instances, the SMS part of the second SMS_AUTHORITY instance is incorrectly concatenated to the site code during DDR processing. Therefore, the site code becomes seven characters. For example, site code information such as SMS:XXX becomes the site code SMS:XXX.
  3. The SQL INSERT statement fails when it tries to insert the seven-character site code into the four-character field.

To determine whether the WMI property on the SMS client contains two site codes, follow these steps:

  1. Locate the DDR of the computer that is blocking the ddm.box queue. To do this, follow these steps:
    1. Open the drive:\SMS\Logs\ddm.log file.
    2. Locate the DDR entry that contains the error entry that is described in the "Symptoms" section.

      Note A typical DDR processing entry starts with information that resembles the following:
      file <fileName>.DDR          SMS_DISCOVERY_DATA_MANAGER
      Processing NEW <System>...   SMS_DISCOVERY_DATA_MANAGER
      Name = <ComputerName>        SMS_DISCOVERY_DATA_MANAGER
      Note the name of the DDR file together with the computer name that is associated with the DDR file.
  2. In the drive:\SMS\ddm.box folder, open the fileName.DDR file to verify the NetBIOS name of the computer. In the following example, the NetBIOS name of the computer is Computer-1:
    BEGIN_PROPERTY
    <8><NetBIOS Name><11><64><Computer-1>
    END_PROPERTY
  3. On the particular client computer, start the Windows Management Instrumentation Tester program. This program is also known as WBEMTest. To do this, click Start, click Run, type wbemtest, and then click OK.
  4. Examine the content in the SMS_AUTHORITY class. To do this, follow these steps:
    1. In Windows Management Instrumentation Tester, click Connect.
    2. In the Connect dialog box, type root\ccm, and then click Connect.
    3. In the Windows Management Instrumentation Tester, click Open Class.
    4. In the Enter Target Class Name box, type sms_authority, and then click OK.

If two or more SMS_AUTHORITY instances are displayed, you may experience the problem that is described in the "Symptoms" section.

RESOLUTION

To resolve this problem, follow these steps:

  1. Apply the hotfix that is mentioned in the "Hotfix information" section to the SMS site server.
  2. Remove the SMS agent from the affected client computer, and then reinstall the SMS agent on the client computer. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

    826842 How to remove a Systems Management Server 2003 client

Hotfix information

A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

Prerequisites

You must have Systems Management Server 2003 Service Pack 2 installed to apply this hotfix. For more information about how to obtain the latest Systems Management Server 2003 service pack , click the following article number to view the article in the Microsoft Knowledge Base:

885643 How to obtain the latest Systems Management Server 2003 service pack


Restart requirement

You do not have to restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name File version File size Date Time Platform
Ddm.dll 2.50.4160.2109 196,608 01-Mar-2006 08:40 x86


STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

In some environments, the Active Directory directory service discovery process may cause the generation of incorrect DDRs. You may experience this problem even when the hotfix from this article is applied. Therefore, if you enable Active Directory discovery, you may receive the same error entries that are mentioned in the "Symptoms" section.

To resolve this problem, contact Microsoft Product Support Services to help you remove the incorrect record from the SMS database. For more information about how to contact Product Support Services, visit the following Web site:

For more information about the terms that are used in this article, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


How to manually resolve problems with incorrect DDRs

To manually resolve problems with incorrect DDRs if SMS 2003 Active Directory System Discovery is used, follow these steps:

  1. Remove the client computer that is identified by the ddm.log entry from any Organizational Units (OU) that are scanned by SMS 2003 Active Directory System Discovery.
  2. Stop the SMS Executive service on the site server.
  3. Copy the backlogged DDRs that are located in the following folder to a different folder location:

    C:\SMS\inboxes\auth\ddm.box folder

    Note By default, the backlogged DDRs are located in this folder.

  4. Restart the SMS Executive service.
  5. Open the SMS 2003 Administrator console on the site server.
  6. Find the SMS client that is identified by the ddm.log entry from the All Systems collection within the SMS Administrator console, and then delete the SMS client.

    Note The client record cannot be directly deleted from the System_SMS_Assign_ARR table in the site server database because of foreign key (FK) constraints. Therefore, you must use the SMS Administrator console to delete the client record.
  7. Run the "Advanced Client and Management Point Cleaner" (Ccmclean.exe) utility from the SMS 2003 Toolkit 2 on the client computer. For more information about Systems Management Server 2003 Toolkit 2, visit the following Microsoft Web site:
  8. Check the site server database for other duplicate GUIDs by using SMS Administrator console\Reporting\Reports. The specific report to use is named "Computers that share the same SMS Unique ID, Report number 73."

    Note For more information about how to correct a situation in which you find that multiple SMS clients share the same unique identifier, click the following article number to view the article in the Microsoft Knowledge Base:

    837374 How to locate and clean Advanced Client Duplicate GUIDs in SMS 2003

  9. Use SQL Server Enterprise Manager or SQL Server Management Studio to verify that the ddm.log file has no references to entries for the client ID in the System_SMS_Assign_ARR table.
  10. Add the client workstation back to the OU that is being scanned.
  11. Run the discovery again, and verify that the client has been added correctly.
  12. Verify that there is only one entry for the client ID in the System_SMS_Assign_ARR table.

    Note The computer will probably obtain a new machineID so that you must search the Name0 column of the System_Disc table for the NetBIOS name. Then, use the MachineID value from this table when you search the System_SMS_Assign_ARR table.
  13. Redeploy the SMS client to the workstation.


Keywords: kbbug kbfix kbhotfixserver kbqfe kbpubtypekc KB918914