search cancel

Certain items suddenly fail to replicate from parent to child. Error -2147212798 DependentHasNoReplicationSupportOnDestinationNS

book

Article ID: 175556

calendar_today

Updated On:

Products

IT Management Suite

Issue/Introduction

Problem scenario:

  • A hierarchy consisting of one parent, four children was operating very well.
  • After an small upgrade or apply an RU update, one of the child servers suddenly stopped receiving Managed Software Delivery policies.
  • The SMP logs on the Parent and destination servers may show no errors or warnings. But a query of the parent's database and plugging the Guid of the item not replicating into the query, returned an explanation.

Running the following query and inserting the GUID of the item that is not replicating into the query returned something similar to the following:

-- SQL query

select  r._eventTime, d.Name as Destination, r.StatusCode, r.StatusText

from Evt_NS_Object_Replication_Status r

join vSource d on d.Guid = r.RemoteNS

where r.LocalGuid = '<guid>' -- Guid of Item not replicating


-- Query results

_evnetTime                       Destination               StatusCode                        StatusText
2019-07-29 15:44:53.043       SMP8-1.epm.local     -2147212798      DependentHasNoReplicationSupportOnDestinationNS

 

Environment

SMP 8.5 RU1
 

Cause

One or more dependent products are missing from the database.   

Explanation:  A timing snafu during an upgrade or update caused an install product to be rolled back or for its "ProductUninstalled" column bit to be set to 1 and it was never turned back on.

To verify run the following SQL against the database of the Child SMP server that cannot receive the replicated object(s)

select distinct p.ProductGuid, prd.Name, 'Missing or Uninstalled' as [Product Status]

from Item p

join Item prd on prd.Guid = p.ProductGuid

left join vProduct vprd on vprd.Guid = p.ProductGuid

where vprd.Guid is null or p.ProductUninstalled = 1

order by 2


If the previous query returns any rows then one of the products identified is likely a necessary component of the items being replicated to the server. If the product shows as uninstalled then this is likely the problem.

 

Resolution

  1. Perform the following steps.
  2. Copy the GUID of the product that is missing from the query results on the child.
  3. Open a command prompt on one of the other servers in the hierarchy whose database does not return Software Management Solution as being installed.
  4. Change directory pointers in the command prompt to ".\Program Files\Altiris\Notification Server\Bin\Tools"
  5. Run the following command plugging into it the GUID copied in step #1:  ImportExportUtil.exe /export {AD0DD85E-43CA-4AF4-A66C-DDDCAF8C2F57} C:\Temp\
  6. The destination folder (c:\temp) should contain a file "thisFolder.xml". Copy this file to the Child SMP missing the product definitions.
  7. Open a command prompt on the Child SMP pointing to the same folder:  ".\Program Files\Altiris\Notification Server\Bin\Tools"
  8. Run the following command: ImportExportUtil /import c:\temp\thisFolder.xml
  9. After running the command, run the installed product query against the child server's database again. It should return no rows, or at least not return the product just imported.
  10. Run differential or manual replication of the polcy again. The item should replicate okay this time.

 

NOTE: If the above query doesn't seem to identify any products that stand out then it is possible that, although a product is seen as installed in the database, it may not be functioning correctly. 

Examine the SMP logs via the LogViewer and filter on key word "Replicat" if a warning or error similar to the following is found then the assemblies for the product(s) is missing or damaged.

Module: Altiris.NS.Replication.dll
Source: Altiris.NS.Replication.SystemInformation.ProductInformation.GetInstalledProductData
Description: Unable to examine the specified product: adda365d-971c-43eb-bd36-2ebdba77a45a

An unexpected exception has occured during CreateInstance.
 Assembly: Altiris.Monitor.Common, Version=7.1.0.0, Culture=neutral, PublicKeyToken=d516cb311cfb6e4f
 Type: Altiris.Monitor.Common.Licensing.UnrestrictedPackSolution
   [Altiris.NS.AeXClassActivatorException @ Altiris.NS]
   at Altiris.NS.ClassActivator.CreateInstance(String assembly, String type, Object[] parameters)
   at Altiris.NS.ItemManagement.Item.CreateInstance(String strClassAssembly, String strClassType, Object[] parameters, Guid itemGuid)
   at Altiris.NS.ItemManagement.Item.GetItemInternal(Guid itemGuid, IEnumerable`1 accessPermissions, ItemLoadFlags itemLoadFlags, Boolean& cacheHit)
   at Altiris.NS.ItemManagement.Item.GetItemInternal(Guid itemGuid, IEnumerable`1 accessPermissions, ItemLoadFlags itemLoadFlags)
   at Altiris.NS.Replication.SystemInformation.ProductInformation.GetInstalledProductData()

Could not load file or assembly 'Altiris.Monitor.Common, Version=7.1.0.0, Culture=neutral, PublicKeyToken=d516cb311cfb6e4f' or one of its dependencies. The system cannot find the file specified.
   [System.IO.FileNotFoundException @ mscorlib]

In the above example Monitor Solution was supposed to be installed but the necessary assembly to load replicable items for the product were missing. If the parent is given information that any product is damaged or missing then it will likely stand down and make note in Evt_NS_Object_Replication_Status that items with some form of relation or dependencies to the product cannot be replicated. (-2147212798      DependentHasNoReplicationSupportOnDestinationNS )

If these log entries are found install or reinstall/repair the product listed.