Installed OEM 11 agent on a machine that has 3 inventory locations. I have added the additional locations into OUIinventories.add ($AGENT_HOME/sysman/config) and reran the target discovery from OEM grid control . I encounter the following error
The following error occurred when collecting Oracle Software for host xxxxxxxxxx
Encountered problems during writing out component Oracle Software of snapshot [Information of type Host Configuration for Host xxxxxxxxx at 2010-12-13 14:40:45 (GMT)]: Internal Error: Tried to compare two objects at least one of which does not implement ComparatorInterface...
I have executed agentca -f from AOH/bin and then run host conf from OEM but I still encounter the error.
Could you please provide us with some more error-messages (e.g. from the logfiles)? Or is these just the only error that your are getting?
Which syntax have you used to add the entries (inventory, original home, real home)?
In answer to your question, I havd not added any syntax etc., We have over 50 hosts many with 2/3 Oracle inventories location, I have been able to add these as targets as able to have all their software configuration details dcorrectly displayed in the targets configuration page on OEM. I have a problem with one host that have 4 Oracle inventories, and I think the error is to do with Oracle not able to compare these inventoiries details when trying to build a software configuration list.
For the sake of clarity, a detailed step by step guide to what i am doing is as follows.
Log into OEM,Click on Targets , then click on <target to be refreshed>, then click on configuration, then “refresh host configuration” this brings an egg timer which says “The host configuration is now being refreshed”
After which it displays the error on the screen. The OS-Registered Software is fine, but under Oracle Software, it states Error collecting Oracle Software and if I click on the "error collecting Oracle software link", I get the following error
Encountered problems during writing out component Oracle Software of snapshot [Information of type Host Configuration for Host xxxx.xx.xx at 2011-01-04 11:04:32 (GMT)]: Internal Error: Tried to compare two objects at least one of which does not implement ComparatorInterface...
The same error (as above is displayed in the OEM screen and also written to emagentfetchlet.log in AGENT_HOME/sysman/log
In the repository of the GC (or OEM) you will find several views which contain the information about the installed Oracle software and patches,
e.g. mgmt$software_homes, mgmt$software_oneoff_patches etc.
If you check this views: will you find valid entries for the one host which causes the problems?
I'm currently not sure from where the agent picks the information which software is installed. Usually I would check the file "oraInverntory/ContentsXML\inventory.xml". This file should contain all Oracle homes...
Thanks for your response but it is not relevant to the issue at hand, Oracle/OEM agent writes to the database views mgmt$software_homes, mgmt$software_oneoff_patches etc) after it has read the inventories to collecting Oracle Software information. However my problem is because Oracle/OEM agent is unable to read and build a detailed Software information from the 4 inventories that exist on the host, no entries will be in the mgmt$views.
As we have multiple OraInventories on the machine, normally the solution is to use the OUIinventories.add in $AGENT_HOME/sysman/config to specify the various Orainventories location. I have done this and it works perfectly for about 40 other hosts but on this host it seems unable to compare and read the various inventories because (from the error message) one of the inventory does not implement ComparatorInterface.
I have a sneaky feeling the issue is related to the entries in OUIinventories.add (real home/original home mapping in OUIinventories.add) . It will be nice to get a response from someone who is familiar with OUIinventories.add and more importantly the difference between original home/real home mapping.