Inventory for Network Devices - Data Class already exists

Article:TECH40975  |  Created: 2008-12-05  |  Updated: 2008-12-05  |  Article URL http://www.symantec.com/docs/TECH40975
Article Type
Technical Solution


Issue



The following errors appears in the NS log files:

Source: Altiris.NS.LegacyInterop.ItemMessageDispatcherService.Dispatch
Description: ItemMessageDispatcherService::Dispatch  ( Unhandled exception.  Type=Altiris.NS.Exceptions.AeXException Msg=Failed to load inventory. [Failed to save the Resource Data Class '58d9ba7e-38ba-4ae8-bb6f-ce4cb980a587'. [Not saving data class SNMP NW Settings with guid {58d9ba7e-38ba-4ae8-bb6f-ce4cb980a587}. Data class Name:SNMP NW Settings,Platform:Common,Manufacturer:Altiris,Version:1.0 already exists with guid {25dfa607-e09d-4d14-895c-641e9174d609}.]] Src=Altiris.NS
StackTrace=
  at Altiris.NS.LegacyInterop.ItemMessageDispatcherService.Dispatch(String message, Boolean useFilename)

Inner exception.  Type=Altiris.NS.Exceptions.AeXException Msg=Failed to save the Resource Data Class '58d9ba7e-38ba-4ae8-bb6f-ce4cb980a587'. [Not saving data class SNMP NW Settings with guid {58d9ba7e-38ba-4ae8-bb6f-ce4cb980a587}. Data class Name:SNMP NW Settings,Platform:Common,Manufacturer:Altiris,Version:1.0 already exists with guid {25dfa607-e09d-4d14-895c-641e9174d609}.]  Src=Altiris.Resource StackTrace=   at Altiris.Resource.ResourceDataClass.OnSave(Boolean bExistingItem)
  at Altiris.Resource.LegacyResourceDataClass.OnSave(Boolean bExistingItem)
  at Altiris.NS.ItemManagement.Item.Save()
  at Altiris.NS.ItemManagement.Item.Create(Guid productGuid)
  at Altiris.NS.ResourceManagement.DataClassImporter.ProcessSchema(DataClass inventoryClass, XmlReader reader, Boolean confirmSchema, Boolean& inventoryClassLoaded)
  at Altiris.NS.ResourceManagement.DataClassImporter.LoadInventory_Impl(XmlReader reader, Boolean bProcessData, Boolean bForceSchemaValidation, Guid resourceGuidOverride)

Inner exception.  Type=Altiris.NS.Exceptions.AeXException Msg=Not saving data class SNMP NW Settings with guid {58d9ba7e-38ba-4ae8-bb6f-ce4cb980a587}. Data class Name:SNMP NW Settings,Platform:Common,Manufacturer:Altiris,Version:1.0 already exists with guid {25dfa607-e09d-4d14-895c-641e9174d609}.  Src=Altiris.NS StackTrace=   at Altiris.NS.ResourceManagement.DataClass.ConfirmSchema()
  at Altiris.NS.ResourceManagement.DataClass.OnSave(Boolean bExistingItem)
  at Altiris.Resource.ResourceDataClass.OnSave(Boolean bExistingItem) )


Environment



NS6
Inventory for Network Devices 6.x

Cause



In this case, the error deals with the data class 'SNMP NW Settings', which should have a guid of ''25dfa607-e09d-4d14-895c-641e9174d609' but is wrongly associated with guid  '58d9ba7e-38ba-4ae8-bb6f-ce4cb980a587'. This error could occur for other data classes with other guids. This article will reference this particular data class and corresponding guids.

A) This data class, 'SNMP NW Settings', belongs to Inventory for Network Devices
         -> select * from item where guid = '25dfa607-e09d-4d14-895c-641e9174d609'
         -> check the productguid
         -> select * from product where guid = '<productguid from previous query>'
         -> check the product name & description

B) Inventory for Network Devices runs from the NS only - clients do not send NSE files to the NS for Inventory ND

C) The <TO> guid in the corresponding NSE file indicates that the NSE belongs to the 'Forwarded Inventory Capture Item'.
         - select [name], description from item where guid = '0baba5a1-b08e-4f76-8dfd-a541c7bf8f62'

So, we can tell that the NSE files are from Inventory Forwarding - not from a client.

There are a few reasons why the dataclass guids could be out of sync, e.g., different versions of Inventory for ND on different NSes, corrupt installation of InvND, corrupt database on the forwarding NS server, etc.


Solution



We recommend the following, in this order:

1. Identify the NS or the NSes with the incorrect guid. To do this, Open the NS console and browse to the configuration tab, Resource Settings, Data Classes, Network Device Data and click on the appropriate data class in the menu tree. Among other things, the dataclass guid will appear in the right-hand window.

2. Ensure that all NSes have the latest build of InvND. If needed upgrade any NS with an out-of-date version.

3. If any NSes have the wrong guid, then repair or uninstall/reinstall InvND on that NS.

 


Legacy ID



44651


Article URL http://www.symantec.com/docs/TECH40975


Terms of use for this information are found in Legal Notices