marsella Honored Contributor.
Honored Contributor.
883 views

Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reconcil

Jump to solution

Hi Expert in UCMDB and Integrations.

 

Failed pushing to Asset Manager:
Target CI 'Complete_amPortfolio[28468]' row is missing and reconciliation type is REFERENCE_ONLY

com.hp.amadapter.push.exception.AMPushDataException: Target CI 'Complete_amPortfolio[28468]' row is missing and reconciliation type is REFERENCE_ONLY

com.hp.amadapter.push.exception.AMPushDataException: Target CI 'Complete_amPortfolio[28468]' row is missing and reconciliation type is REFERENCE_ONLY
at com.hp.amadapter.push.PushDirector.insertOrUpdateNode(PushDirector.java:791)
at com.hp.amadapter.push.PushDirector.executeDependencyNodeTransaction(PushDirector.java:294)
at com.hp.amadapter.push.PushDirector.legacyTransaction(PushDirector.java:1786)
at com.hp.amadapter.push.PushDirector.pushToAM(PushDirector.java:119)
at com.hp.amadapter.AMPushAdapter.pushTreeNodes(AMPushAdapter.java:109)
at com.hp.ucmdb.adapters.GenericAdapter.pushToRemoteDataSource(GenericAdapter.java:575)
at com.hp.ucmdb.adapters.GenericAdapter.updateData(GenericAdapter.java:408)
at com.hp.ucmdb.dataAccess.manager.DirectBasicDataAdapterWrapper.updateData(DirectBasicDataAdapterWrapper.java:420)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.hp.ucmdb.discovery.probe.processor.GenericPushProbeRequestProcessor.processRequest(GenericPushProbeRequestProcessor.java:36)
at com.hp.ucmdb.discovery.probe.processor.GenericPushProbeRequestProcessor.processRequest(GenericPushProbeRequestProcessor.java:13)
at com.hp.ucmdb.discovery.probe.processor.AbstractProbeProcessor.process(AbstractProbeProcessor.java:56)
at com.hp.ucmdb.discovery.probe.processor.AbstractProbeProcessor.process(AbstractProbeProcessor.java:19)
at com.hp.ucmdb.discovery.probe.agents.probemgr.adhoctasks.AdHocProbeRequestOperation.performAction(AdHocProbeRequestOperation.java:64)
at com.hp.ucmdb.discovery.probe.agents.probemgr.taskdispatcher.AdHocTaskDispatcher.dispatchTask(AdHocTaskDispatcher.java:70)
at sun.reflect.GeneratedMethodAccessor671.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:71)
at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:275)
at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:112)
at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:46)
at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237)
at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252)
at javax.management.StandardMBean.invoke(StandardMBean.java:405)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:298)
at org.springframework.jmx.access.MBeanClientInterceptor.doInvoke(MBeanClientInterceptor.java:405)
at org.springframework.jmx.access.MBeanClientInterceptor.invoke(MBeanClientInterceptor.java:353)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy101.dispatchTask(Unknown Source)
at com.hp.ucmdb.discovery.probe.agents.probegw.managementtasks.adhoctasks.AdhocThread.run(AdhocThread.java:54)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745)

 

Thanks,

 

 

0 Likes
1 Solution

Accepted Solutions
John Goldstein Outstanding Contributor.
Outstanding Contributor.

Re: Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reco

Jump to solution

The computer / nodes push may be successful but is the parent node of the installed software in that or a previous successful push is the question you need to answer. Look at the related CIs of one of the installed software that is producing an error. Search for the corresponding Global ID of the related Node in the amPortfolio table.

If you find the CMDBId in the amPortfolio table but are still getting an error then clearing the synchronizer cache may be your solution.

If you do not find the CMDBId, then look at your TQLs for Nodes and Installed software to determine why that computer is not in the Node push but is in the Installed Software push.

John

0 Likes
5 Replies
Honored Contributor.. Josh_MM Honored Contributor..
Honored Contributor..

Re: Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reco

Jump to solution

There's not really a question in your post, so I am going to assume you don't know what this error means. If you are looking for more/other info, please ensure you put that in your post.

This error occurs when the information provided to AM assumes an object exists, but it doesn't (or doesn't match the criteria). The integration pushes data to a set of tables, that are all related to the type of CI you are pushing. Depending on the definition of those dependencies, some information in certain tables gets updated, created, of just "referenced."

In the case of your issue, the push assumes that a specific record in the amPortfolio table exists, but can't find that record. The dependency information has identified this table as "read only" - meaning the push shouldn't create records in this table if no good record was found.

0 Likes
marsella Honored Contributor.
Honored Contributor.

Re: Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reco

Jump to solution

Ok, Thanks

How is it solved?
What is the solution?

Is the problem in the database?

--------------------------------------------------------

Message:

Failed pushing to Asset Manager:
Target CI 'Complete_amPortfolio[14315]' row is missing and reconciliation type is REFERENCE_ONLY

com.hp.amadapter.push.exception.AMPushDataException: Target CI 'Complete_amPortfolio[14315]' row is missing and reconciliation type is REFERENCE_ONLY

com.hp.amadapter.push.exception.AMPushDataException: Target CI 'Complete_amPortfolio[14315]' row is missing and reconciliation type is REFERENCE_ONLY

assetucmdb.PNG

 

 

 

0 Likes
John Goldstein Outstanding Contributor.
Outstanding Contributor.

Re: Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reco

Jump to solution

The problem is that you are pushing the installed software and it depends on the computer  / parent portfolio to already be in the AM database.

Solution:

  • Ensure you are pushing AM Node before you push software. Adjust schedule of push jobs so that Installed Software begins after AM Node has completed.
  • If you have modified the TQL of AM Node ensure that you have also modified the Node element in the AM Installed Software TQL. For instance, if you have added a condition to not push nodes that are "Candidate for deletion = True" in the AM Node then also add the condition to the node CIT in the AM Installed Software TQL.

Troubleshooting:
Sometimes the synchronizer cache gets corrupt after long use or many deletes in the source database. The following will delete and recreate the synchronizer cache.

  1. Ensure no push job is currently active.
  2. Open JMX Console of UCMDB Server.
  3. Search for "removeIdMappingsOfDataStore"
  4. Enter customer Id and name of Integration Point / Data store.
  5. Click Invoke.
  6. Push full synchronization of AM Node or all your computer TQLs.
  7. After computer job has completed push full synchronization of installed software.

If you find the information in this post to be your answer, please mark it as the solution. If you found the information helpful to you, consider giving a thumbs up / kudos.

John

Tags (2)
0 Likes
marsella Honored Contributor.
Honored Contributor.

Re: Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reco

Jump to solution

Hi John,

No the problem no it's that. The push of computer/nodes is successful - These already exist in AM.

tomorrow I will apply the removeIdMappingsOfDataStore method

Thanks for sharing and advice

0 Likes
John Goldstein Outstanding Contributor.
Outstanding Contributor.

Re: Failed pushing to Asset Manager: Target CI 'Complete_amPortfolio[28468]' row is missing and reco

Jump to solution

The computer / nodes push may be successful but is the parent node of the installed software in that or a previous successful push is the question you need to answer. Look at the related CIs of one of the installed software that is producing an error. Search for the corresponding Global ID of the related Node in the amPortfolio table.

If you find the CMDBId in the amPortfolio table but are still getting an error then clearing the synchronizer cache may be your solution.

If you do not find the CMDBId, then look at your TQLs for Nodes and Installed software to determine why that computer is not in the Node push but is in the Installed Software push.

John

0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.