In my last post I discussed the AliasesCleanup agent, so I thought the next logical agent to discuss would be the ObjectsWithoutAliasesCleanupAgent. You guessed it, another agent that affects the aliases table. I think the name of this agent explains it pretty well, it cleans up objects that do not have aliases. As I mentioned in my earlier post, a CI must have at least one alias in order to be valid. If there are none, then this topology builder agent deletes the CI.
You may be asking, how do I get objects without aliases? Typically there are not many of these, but they can occur in the case where there is a delete or merge that was interrupted, such as stopping TADDM or a TADDM failure like an OutOfMemory mid-process, or even some cases of database errors. Having extraneous aliases for objects that do no really exist can cause duplicates in TADDM, hence the agent removes such objects to avoid this.
Properties for this agent
The following collation.properties entries apply to this topology builder agent;
This property limits the number of CIs which will be removed by the agent during one run.
The default value is: 1000.
If the property is set to -1, then the agent exits without performing any cleanup and it just prints the message:
DEBUG cdb.Default - ObjectsWithoutAliasesCleanupAgent is disabled
With INFO logging, you can see useful messages in the log/services/TopologyBuilder.log or log/agents/ObjectsWithoutAliasesCleanupAgent.log about the work the agent is going to do or has done;
INFO cdb.TivoliStdMsgLogger - CTJOT0402I Topology builder agent class com.ibm.cdb.topomgr.topobuilder.agents.ObjectsWithoutAliasesCleanupAgent is starting.
INFO agents.ObjectsWithoutAliasesCleanupAgent - Found 2443 CIs without aliases
INFO agents.ObjectsWithoutAliasesCleanupAgent - About to delete first 100 CIs
INFO agents.ObjectsWithoutAliasesCleanupAgent - Removed 1000 out of 2443
INFO cdb.TivoliStdMsgLogger - CTJOT0403I Topology builder agent class com.ibm.cdb.topomgr.topobuilder.agents.ObjectsWithoutAliasesCleanupAgent is stopping.
The messages above show 1000 "maxToRemove" CIs without aliases being removed; the next 1000 will be picked up by subsequent runs of the agent.
With DEBUG logging you can quickly see timing data for the agent;
DEBUG engine.TopologyBuilderEngine - !TBE! Agent com.ibm.cdb.topomgr.topobuilder.agents.ObjectsWithoutAliasesCleanupAgent with scope periodic completed after 273.571 seconds
Hopefully this helps you understand this agent and what it's used for. If you have any questions, please feel free to comment below.
Next Up : AliasesJnTableCleanupAgent - yes, another aliases related agent, the last one!