none
В базу данных не влезают файлики *.ddr. RRS feed

  • Общие обсуждения

  • Установлен SCCM 2012 R2.
    Вернее, тут можно сказать, что в свое время он был обновлен до данной версии. Подробности не знаю и узнать уже не получится.
    Ошибка следующая:
    В Monitoring\System Status\Component Status сигналит статусом "Critical" компонент SMS_DISCOVERY_DATA_MANAGER.
    Подробный осмотр выявил следующее:
    1. 
    "Microsoft SQL Server reported SQL message 8152, severity 16: [22001][8152][Microsoft][SQL Server Native Client 11.0][SQL Server]String or binary data would be truncated.
    Please refer to your Configuration Manager documentation, SQL Server documentation, or the Microsoft Knowledge Base for further troubleshooting information."
    2.
    "Discovery Data Manager failed to process the discovery data record (DDR) "C:\Program Files\Microsoft Configuration Manager\inboxes\auth\ddm.box\userddrsonly\adu1dgb5.DDR", because it cannot update the data source.

    Possible cause: On a Primary site, it is probably a SQL Server problem.
    Solution: 
    1. Review the immediately preceding status messages from this component about SQL Server errors.
    2. Verify that this computer can reach the SQL Server computer.
    3. Verify that SQL Server services are running.
    4. Verify that the site can access the site database.
    5. Verify that the site database, transaction log, and tempdb are not full.
    6. Verify that there are at least 50 SQL Server user connections, plus 5 for each Configuration Manager Console.

    If the problem persists, check the SQL Server error logs.

    Possible cause: On a secondary site, Discovery Data Manager probably cannot write to a file on the site server, so check for low disk space on the site server.
    Solution: Make more space available on the site server."

    Подробно поискал по второй ошибке. Во первых, все пункты 1-6 проверены и работают.
    Начал смотреть эти файлики .ddr
    во-первых, насколько я понял, это все файлы содержащие информацию о пользователях.
    во-вторых, при удалении этих файликов компонент SMS_DISCOVERY_DATA_MANAGER сигнализирует, что все хорошо.
    в-третих, после удаления, файлики ddr снова начинают копиться.
    Детальный осмотр выявил, что фактически здесь дело идет о ряде пользователей. одних и тех же. их штук 10-12.
    То есть, приходит информация по данному пользователю и файл забраковывается. И есть подозрение, что от конкретных пользователей. 

    Этих пользователей в SCCM я не нашел, значит все их файлики ddr отбрасываются. Общего между пользователями найти пока не могу. Разные у них филиалы, стаж работы и т д.

    Полез глубже, в ddm.log:
    Привожу пример обработки из ошибки номер 2, приведенной выше:

    Processing file adu1dgb5.DDR
    Processing record of type User with discovery agent SMS_AD_USER_DISCOVERY_AGENT
    Processing NEW <User>...
    ...далее идут insert...
    insert MachineIdGroupXRef table.....
    insert base table: User_DISC......
    insert into array tables......
    insert agent information......
    *** SET XACT_ABORT ON; BEGIN TRAN....
    Info: The DDR contains 47 properties, but none has new values.

    Казалось бы, все нормально. 
    НО! Затем идет:
    *** [22001][8152][Microsoft][SQL Server Native Client 11.0][SQL Server]String or binary data would be truncated.

    insert agent information...
    insert into DiscItemAgents...
    CDiscoverySource_SQL::AddItem - could not execute sql- SET XACT_ABORT ON; BEGIN TRAN.....
    CDiscoverDataManager::ProcessDDRs - Unable to update data source
    STATMSG: ID=2636 SEV=E LEV=M SOURCE="SMS Server" COMP="SMS_DISCOVERY_DATA_MANAGER" SYS=SCCM2012.domain SITE=EEE PID=54560 TID=31700 GMTDATE=Ср май 21 09:40:05.558 2014 ISTR0="C:\Program Files\Microsoft Configuration Manager\inboxes\auth\ddm.box\userddrsonly\adu1dgb5.DDR" ISTR1="" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=0
    Moving bad file adu1dgb5.DDR to C:\Program Files\Microsoft Configuration Manager\inboxes\auth\ddm.box\userddrsonly\BAD_DDRS\adu1dgb5.DDR.
    CDiscoverDataManager::ProcessUserDDRs_PS - Moved bad DDR
    CDiscoverDataManager::ProcessUserDDRs_PS - error encountered.  Stopping for 1 minute(s)
    CDiscoverDataManager::THREAD_ProcessUserDDRs - Failed to manage files in inbox.  Will retry in at least 60 seconds

    Исходя из описания в логах, предполагаю, что структура файлов такова, что некоторые данные слишком большого размера, чтобы поместиться в поля таблиц.

    В связи с этим у меня возникло мнение, что в ходе апгрейда SCCM схема базы данных не обновилась так, как нужно.
    Как это можно проверить наиболее безболезненно? или проблема может быть в чем-то другом?
    что в таких случаях делать?

Все ответы

  • Если точный проблемный SQL-запрос не видно в логе, то его можно найти SQL Profiler'ом. Я бы сначала его отловил, прежде чем делать выводы...

    Ну и попутно я бы проверил настройки AD User и Group Discovery, находятся ли проблемные юзеры в скоупах дискавери.

    16 июня 2014 г. 4:50
  • Вобщем, совет один, через профилер ловить в какие таблицы и поля уходят запросы, превышающие размер поля. и далее увеличивать размер поля.
    4 декабря 2014 г. 7:20