Video Screencast Help
Give us your opinion and win with Symantec! Please help us by taking this survey to tell us about your experience with Symantec Connect, so that we can continue to grow and improve.  Take the survey.

Tag & Exception Tab Issue (CCS 10.50.530.20500 [PCU500])

Created: 25 Apr 2013 • Updated: 25 Apr 2013
Tobias Lanz's picture
+8 8 Votes
Login to vote

Recently I stumbled on a Tab Loading Issue inside the Asset view.

The Mainproblem appeared to be the Tag Tab which was not loading as expected.

180px_Tag_and_Exception_Tab_not_Loading.jpg

First things first, I checked my log (AppServer and SymConsole).
After a few Seconds i found the related Log entries.

Appserver Log was showing the following:

24.04.2013 06:50 24.04.2013 08:50 <appservername>Error Tagging SymConsole 2476 1 GetTagsFromObjectGuid 0 1 Error in GetTagsFromObjectGuid
24.04.2013 06:50 24.04.2013 08:50 <appservername>Error Tagging SymConsole 2476 1 Search 0 1 "System.ArgumentNullException: Value cannot be null.
Parameter name: searchFilter
at Symantec.CCS.Business.Core.BusinessBase`1.Search(String containerUniqueId
at Symantec.CSM.Business.Tagging.TagBusiness.GetTagsFromObjectGuid(IEnumerable`1 objectGuids)"
24.04.2013 06:50 24.04.2013 08:50 <appservername>Error Tag management SymConsole 2476 1 Deserialize 0 1 "Value cannot be null.
Parameter name: searchFilter"
24.04.2013 06:50 24.04.2013 08:50 <appservername>Error Symantec.Core SymConsole 2476 13 MoveNext 0 0 "RetryHelper.Call(Search) - failed [An operations error occurred.]
at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.MoveNext()
at Symantec.CSM.Directory.LdapOperations.Search(String strObjectDN
at Symantec.CSM.Directory.Directory.<>c__DisplayClass78.<Search>b__76()
at Symantec.RetryHelper.Call[TReturnType](String retryName
24.04.2013 06:50 24.04.2013 08:50 <appservername>Warning Symantec.Core SymConsole 2476 13 Call 0 0 "RetryHelper.Call(Search) - [An operations error occurred.] : sleeping [00:00:01.4380000]
24.04.2013 06:50 24.04.2013 08:50 <appservername>Error Symantec.Core SymConsole 2476 13 MoveNext 0 0 "RetryHelper.Call(Search) - failed [An operations error occurred.]

with another 9 Same "moveNext 0 0 "RetryHelper.Call(Search) entries.

Console Log displayed kind of the same "stuff": 













24.04.2013 06:55 24.04.2013 08:55 <appservername> Error Tagging SymConsole 2476   13 GetAllTagsOfBusinessObject   0 0 Error in GetAllTagsOfBusinessObject for: CN=011eaff2-307a-4f31-85a9-502286219090,CN=Solaris 10,CN=Solaris,CN=ESM Structure,CN=Asset System,CN=Asset Management,CN=BusinessObjects,O=Symantec
24.04.2013 06:55 24.04.2013 08:55 <appservername> Error Tagging SymConsole 2476   13 Call   0 0 System.Runtime.InteropServices.COMException (0x80072020): An operations error occurred.

   at Symantec.RetryHelper.Call[TReturnType](String retryName, RetryOperation`1 retryOperation, FailureOperation failureOperation, String context)

   at Symantec.CSM.Directory.Directory.Search(String strObjectDN, String strAttributeScopeQuery, String strFilter, List`1 listAttributesToRetrieve, Int32 nItemsToReturn)

   at Symantec.CCS.Business.Core.BusinessBase`1.Search(String strObjectDN, String strAttributeScopeQuery, String strFilter, List`1 listAttributesToRetrieve, Int32 nItemsToReturn)

   at Symantec.CSM.Business.Tagging.TagBusiness.GetAllTagsOfBusinessObject(String businessObjectDn, List`1 attributesToRetrieve, DataSet& tags)

24.04.2013 06:55 24.04.2013 08:55 <appservername> Error Assets SymConsole 2476   13 Load   0 0 Exception has been thrown by the target of an invocation.












24.04.2013 08:07 24.04.2013 10:07 <appservername> Error Symantec.Core SymConsole 2476   15 MoveNext   0 0 RetryHelper.Call(Search) - failed [An operations error occurred.], context [Directory], stop retry flag [False], failed retry counter [0 of 10] : System.Runtime.InteropServices.COMException (0x80072020): An operations error occurred.

   at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.MoveNext()

   at Symantec.CSM.Directory.LdapOperations.Search(String strObjectDN, Boolean bSearchSubtree, String strAttributeScopeQuery, String strFilter, List`1 listAttributesToRetrieve, Int32 nItemsToReturn)

   at Symantec.CSM.Directory.Directory.<>c__DisplayClass78.<Search>b__76()

   at Symantec.RetryHelper.Call[TReturnType](String retryName, RetryOperation`1 retryOperation, FailureOperation failureOperation, String context)

 Apparent you can see the "root of all Evil"

Error in GetAllTagsOfBusinessObject for: CN=011eaff2-307a-4f31-85a9-502286219090,CN=Solaris 10,CN=Solaris,CN=ESM Structure,CN=Asset System,CN=Asset Management,CN=BusinessObjects,O=Symantec

GetAllTagsOfBusinessObject. Okay, Let me check.

#IMPORTANT NOTE
#(Symantec does not recommend browsing inside ADAM, please make sure you know what you're doing. I don't take any responsibility)
#END NOTE

After a few browses inside ADAM I found the attribute "symc-csm-BusinessObject-Tag". 
It was showing somithing like the following:

CN=ddcc0269-20c8-4108-ba49-afbf443079e8\0ADEL:24b1fd12-b70c-47e5-9231-cd550f86e926,CN=Deleted Objects,O=Symantec

Since i now that there never existed a "CN=Deleted Objects" container I obviously found the dirty vermin. A CN called CN=ddcc0269-20c8-4108-ba49-afbf443079e8\0ADEL:24b1fd12-b70c-47e5-9231-cd550f86e926 also never existed. At the moment i don't know what caused the Issue. Maybe Symantec Support will puzzle out (Case#: 04196190).

Anyway. My Problem was solved Setting the Value to "<not set>". As you can imagine, i Scripted all the Work for my nearly 2000 Unix Assets.
Luckily i didn't set very much tags on the Assets until now. Or even if i had set more of them - it was done by recon rules - no worries at my site.

A few Lines of code made my Day. Contact me for further Help. I'm not posting the "Full" Script due to respect of Symantec Support.

$OSs = @( "enlightened" )
$OSs | % { $OS="$_"
$ConnectString = [adsi]"enlightened"
$strFilter = "(ObjectClass=symc-csm-AssetSystem-Asset-ESM-Agent)"

$objSearcher = New-Object adsisearcher([adsi]$ConnectString,"($strFilter)")
$objSearcher.SearchScope = "1"
$objSearcher.SearchRoot = $ConnectString
$objSearcher.PropertiesToLoad.clear()
$objSearcher.PropertiesToLoad.AddRange(('CN', 'symc-csm-BusinessObject-Tag'))

$SearchResult = $objSearcher.FindAll()

$SearchResult | % {
$Asset = [ADSI]$_.GetDirectoryEntry()
$Asset."symc-csm-BusinessObject-Tag"
$tmpString = $Asset."symc-csm-BusinessObject-Tag".ToString()
if ( $tmpString.Contains("CN=Deleted Objects") ) { $Asset."symc-csm-BusinessObject-Tag".Value = $null
$Asset.CommitChanges()
}
}
}

smiley