MIM Event Broker Forum
Welcome to the community forum for MIM Event Broker.
Browse the knowledge base, ask questions directly to the product group, or leverage the community to get answers. Leave ideas for new features and vote for the features or bug fixes you want most.

Error in stored values engine attempting to write to storage
Using
- Event Broker v3.2.1 Revision #3
The following was written this morning to the PROD EvB logs:
Operation 40266ccd-1acf-4960-b463-f466bb664eed failed in operation list with id 31bb88cc-a29d-40e7-8911-af6870f8b173 for the following reason. This is retry number 0: Unify.Framework.UnifyEngineException: Error in stored values engine attempting to write to storage, see the inner exception. ---> System.InvalidOperationException: Collection was modified; enumeration operation may not execute. at System.Collections.Generic.Dictionary`2.Enumerator.MoveNext() at WriteArrayOfKeyValueOfGroupedNameValueCollectionKeyanyType70DdoCVIToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract ) at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle, Type declaredType) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle) at WriteStoredValueCollectionToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract ) at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context) at System.Runtime.Serialization.DataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver) at System.Runtime.Serialization.DataContractSerializer.InternalWriteObject(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver) at System.Runtime.Serialization.XmlObjectSerializer.WriteObjectHandleExceptions(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver) at System.Runtime.Serialization.XmlObjectSerializer.WriteObject(XmlDictionaryWriter writer, Object graph) at System.Runtime.Serialization.XmlObjectSerializer.WriteObject(Stream stream, Object graph) at Unify.Framework.StoredValues.IsolatedStoredValuesEngineBase.<>c__DisplayClass14_0.<SaveStoredValuesCollection>b__0() at Unify.Framework.ExtensionMethods.WaitOnMutex(Mutex mutex, Action work) at Unify.Framework.StoredValues.IsolatedStoredValuesEngineBase.SaveStoredValuesCollection(IStoredValueCollection storedValueCollection) --- End of inner exception stack trace --- at Unify.Framework.StoredValues.IsolatedStoredValuesEngineBase.SaveStoredValuesCollection(IStoredValueCollection storedValueCollection) at Unify.Product.EventBroker.ADSyncChangesPlugIn.GetChanges(DirectorySearcher searcher) at Unify.Product.EventBroker.ADChangesPlugInBase.Check() at Unify.Product.EventBroker.OperationListExecutorBase.RunCheck(ICheckOperationFactoryInformation checkOperation)
See related issue QBE-67 - possibly related to similar problem also occurring with Identity Broker where loss of data is an issue. In this case the obvious impact is re-reading the same changes multiple times - however there may be other more significant outcomes.

EB: Clear Run History enhancement
This question pertains to: https://unifysolutions.jira.com/wiki/display/EB32/Clear+Run+History
The HTML files created provide a list of the Run Profiles that have been executed for a specific period of time. The HTML file also contains what appears to be a hypertext link at the end of each row.
These hypertext links don't do anything - all the rows tell us is whether a Run Profile's status was a success, warning or failure - but it does not drill down into any of the details of the status.
Wouldn't it be more useful if the hypertext link revealed more information pertaining to the status of the specific Run Profile? This would be very useful for historical purposes and troubleshooting.
Otherwise, it's kind of a useless HTML file?
Is there a way to include more detail in the HTML file?
Thanks

Can MIM Event Broker determine when a PowerShell script has stopped running
We're setting up scheduled SSIS or PowerShell tasks, but need to ensure that they are executed sequentially. Are PowerShell operations executed synchronously?

Hi Andre,
Unless otherwise stated, operations are executed synchronously. This is to ensure that the result of the operation can be used for branching. Currently the only operation that is asynchronous (optionally) is the Operation List Execute.
Thanks.

Operation Run Statistics
It would be nice to have the Last run statistics on the Operation list have the last Operation Begin / End. Currently you can only see when the check was last run not the actual Operation.

Thanks for the feedback Phil. At the moment, the Last run statistics represents the last time the operation list itself was executed, not the operations contained in it, which is why they update even when the check fails. We are looking at making improvements to the Event Broker dashboard in the future, so I'll make sure your feedback is considered as part of that.

Identity Broker Adapter Check operation should list Adapters
The Identity Broker Adapter check operation in EB 3.2 requires that you enter the Adapter ID, I would have thought EB could query IDB and display a list of Adapter names rather than having to find and enter the Adapter ID manually.

Generate default display name for Operation List Execute operations in Event Broker 3.2
When adding an Operation List Execute to an operation list there is no useful display name generated - such as the name of the operation list. It is necessary to manually override the display name otherwise it just appears as Operation List.
Can this be changed to be like the Run Profile operation where it generates Management Agent: My MA - DIDS as the display name.
E.g. Operation List: <Name of Operation List>

AD Sync Get Changes: Collection was modified
Via email with Bob Bradley:
Operation bccdc996-f23b-46a0-87ad-607a093ce096 failed in operation list with id add13e6e-e8b3-4336-b9aa-b9c62943a855 for the following reason. This is retry number 0: Unify.Framework.UnifyEngineException: Error in stored values engine attempting to write to storage, see the inner exception. ---> System.InvalidOperationException: Collection was modified; enumeration operation may not execute. at System.Collections.Generic.Dictionary`2.Enumerator.MoveNext() at WriteArrayOfKeyValueOfGroupedNameValueCollectionKeyanyType70DdoCVIToXml(XmlWriterDelegator, Object , XmlObjectSerializerWriteContext , CollectionDataContract ) at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle, Type declaredType) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle) at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle) at WriteStoredValueCollectionToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract ) at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context) at System.Runtime.Serialization.DataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver) at System.Runtime.Serialization.DataContractSerializer.InternalWriteObject(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver) at System.Runtime.Serialization.XmlObjectSerializer.WriteObjectHandleExceptions(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver) at System.Runtime.Serialization.XmlObjectSerializer.WriteObject(XmlDictionaryWriter writer, Object graph) at System.Runtime.Serialization.XmlObjectSerializer.WriteObject(Stream stream, Object graph) at Unify.Framework.StoredValues.IsolatedStoredValuesEngineBase.<>c__DisplayClass14_0.<SaveStoredValuesCollection>b__0() at Unify.Framework.ExtensionMethods.WaitOnMutex(Mutex mutex, Action work) at Unify.Framework.StoredValues.IsolatedStoredValuesEngineBase.SaveStoredValuesCollection(IStoredValueCollection storedValueCollection) --- End of inner exception stack trace --- at Unify.Framework.StoredValues.IsolatedStoredValuesEngineBase.SaveStoredValuesCollection(IStoredValueCollection storedValueCollection) at Unify.Product.EventBroker.ADSyncChangesPlugIn.GetChanges(DirectorySearcher searcher) at Unify.Product.EventBroker.ADChangesPlugInBase.Check() at Unify.Product.EventBroker.OperationListExecutorBase.RunCheck(ICheckOperationFactoryInformation checkOperation)<span></span>

Event Broker 3.2 runs disabled operation list
When there are two operations lists in Event Broker, e.g. Operation List (OL) A includes a step to run Operation List B. When OL A is enabled however OL B is disabled, OL B is still run by OL A. I would have expected the disabled status of OL B to be honoured.

Event Broker 3.2 RestAPIAgentSendRequestFailedException error running IDB 5.1 Connector
Running an Identity Broker connector from Identity Broker (Import All) - the connector import is started however the error below appears after approx. 90 secs resulting in the Operation List being terminated prematurely - the Connector import however continues running in the background.
Operation 35db6bcb-6055-42e2-8e0d-e8e9f922929b failed in operation list with id 8b481868-b4da-4712-84ad-80bc959cf111 for the following reason. This is retry number 0: Unify.Product.EventBroker.RestAPIAgentSendRequestFailedException: The sending of the request failed. See the inner exception for more information. ---> System.Threading.Tasks.TaskCanceledException: A task was canceled. at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Unify.Product.EventBroker.RestAPIAgent.<SendPostRequestAsync>d__3.MoveNext() --- End of inner exception stack trace --- at Unify.Product.EventBroker.RestAPIPlugIn.Execute() at Unify.Product.EventBroker.OperationListExecutorBase.RunNextOperations(IEnumerator`1 operationEnumerator) |

Cannot find an object with identity: 'none'
Receiving the following errors when EvB attempts to run an operation.
20160824,01:17:38,UNIFY FIM Event Broker,Logging Engine,Information,Log file started.,Minimal20160824,01:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,03:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,05:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,05:44:34,UNIFY FIM Event Broker,Operations,Error,"Operation abc6ccb0-3d9b-44ed-aab5-8acb839dc9db failed in operation list with id 812f51cd-cab4-47fc-afcd-713e1d51b6dc for the following reason. This is retry number 0: System.Runtime.Remoting.ServerException: Operation for management agent with id fb727b8b-d927-4124-80ad-f0f73ed7df84 with name FIFS failed with result stopped-user-termination-from-wmi-or-ui at Unify.Product.EventBroker.FIMAgent.ExecuteRunProfile(IStoredValueCollection storedValuesCollection, Guid agentId, Guid managementAgentId, Guid runProfileId) at Unify.Product.EventBroker.RunProfilePlugIn.Execute() at Unify.Product.EventBroker.OperationListExecutorBase.RunNextOperations(IEnumerator`1 operationEnumerator)",Normal 20160824,05:44:38,UNIFY FIM Event Broker,Operations,Error,"Operation cd255717-52a1-4ba7-bfd0-394abc7fdd1d failed in operation list with id 812f51cd-cab4-47fc-afcd-713e1d51b6dc for the following reason. This is retry number 0: System.Runtime.Remoting.ServerException: Operation for management agent with id fb727b8b-d927-4124-80ad-f0f73ed7df84 with name E failed with result stopped-user-termination-from-wmi-or-ui at Unify.Product.EventBroker.FIMAgent.ExecuteRunProfile(IStoredValueCollection storedValuesCollection, Guid agentId, Guid managementAgentId, Guid runProfileId) at Unify.Product.EventBroker.RunProfilePlugIn.Execute() at Unify.Product.EventBroker.OperationListExecutorBase.RunNextOperations(IEnumerator`1 operationEnumerator)",Normal 20160824,05:44:43,UNIFY FIM Event Broker,Operations,Error,"Operation 682e1c97-8044-47c7-b4b0-88da5c57c8e1 failed in operation list with id 812f51cd-cab4-47fc-afcd-713e1d51b6dc for the following reason. This is retry number 0: System.Management.Automation.CmdletInvocationException: Cannot find an object with identity: 'none' under: 'DC=corp,DC=DomainName,DC=gov,DC=au'. ---> Microsoft.ActiveDirectory.Management.ADIdentityNotFoundException: Cannot find an object with identity: 'none' under: 'DC=corp,DC=DomainName,DC=gov,DC=au'. at Microsoft.ActiveDirectory.Management.Commands.ADFactoryUtil.GetObjectFromIdentitySearcher(ADObjectSearcher searcher, ADEntity identityObj, String searchRoot, AttributeSetRequest attrs, CmdletSessionInfo cmdletSessionInfo, String[]& warningMessages) at Microsoft.ActiveDirectory.Management.Commands.ADFactory`1.GetExtendedObjectFromIdentity(T identityObj, String identityQueryPath, ICollection`1 propertiesToFetch, Boolean showDeleted) at Microsoft.ActiveDirectory.Management.Commands.ADGetCmdletBase`3.ADGetCmdletBaseProcessCSRoutine() at Microsoft.ActiveDirectory.Management.CmdletSubroutinePipeline.Invoke() at Microsoft.ActiveDirectory.Management.Commands.ADCmdletBase`1.ProcessRecord() --- End of inner exception stack trace --- at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input) at System.Management.Automation.RunspaceInvoke.Invoke(String script, IEnumerable input, IList& errors) at Unify.Product.EventBroker.PowerShellScriptPlugInBase.ExecuteScript() at Unify.Product.EventBroker.PowerShellScriptPlugIn.Execute() at Unify.Product.EventBroker.OperationListExecutorBase.RunNextOperations(IEnumerator`1 operationEnumerator)",Normal 20160824,07:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,09:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,11:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,13:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,14:05:05,UNIFY FIM Event Broker,Operations,Error,"Operation 682e1c97-8044-47c7-b4b0-88da5c57c8e1 failed in operation list with id 812f51cd-cab4-47fc-afcd-713e1d51b6dc for the following reason. This is retry number 0: System.Management.Automation.CmdletInvocationException: Cannot find an object with identity: 'none' under: 'DC=corp,DC=DomainName,DC=gov,DC=au'. ---> Microsoft.ActiveDirectory.Management.ADIdentityNotFoundException: Cannot find an object with identity: 'none' under: 'DC=corp,DC=DomainName,DC=gov,DC=au'. at Microsoft.ActiveDirectory.Management.Commands.ADFactoryUtil.GetObjectFromIdentitySearcher(ADObjectSearcher searcher, ADEntity identityObj, String searchRoot, AttributeSetRequest attrs, CmdletSessionInfo cmdletSessionInfo, String[]& warningMessages) at Microsoft.ActiveDirectory.Management.Commands.ADFactory`1.GetExtendedObjectFromIdentity(T identityObj, String identityQueryPath, ICollection`1 propertiesToFetch, Boolean showDeleted) at Microsoft.ActiveDirectory.Management.Commands.ADGetCmdletBase`3.ADGetCmdletBaseProcessCSRoutine() at Microsoft.ActiveDirectory.Management.CmdletSubroutinePipeline.Invoke() at Microsoft.ActiveDirectory.Management.Commands.ADCmdletBase`1.ProcessRecord() --- End of inner exception stack trace --- at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input) at System.Management.Automation.RunspaceInvoke.Invoke(String script, IEnumerable input, IList& errors) at Unify.Product.EventBroker.PowerShellScriptPlugInBase.ExecuteScript() at Unify.Product.EventBroker.PowerShellScriptPlugIn.Execute() at Unify.Product.EventBroker.OperationListExecutorBase.RunNextOperations(IEnumerator`1 operationEnumerator)",Normal 20160824,15:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,17:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,18:19:00,UNIFY FIM Event Broker,Operations,Warning,The operation list of name Home Drive provisioning with id bb45e338-6945-4a18-9d04-0040444ce173 is disabled. As such it cannot be run.,Normal 20160824,19:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,21:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160824,23:17:38,UNIFY FIM Event Broker,Agent Engine,Information,Scheduled job to perform a FIMAgentRefreshRequest on agent FIM Agent succeeded.,Normal 20160825,00:00:04,UNIFY FIM Event Broker,Logging Engine,Information,Log file completed.,Minimal

Hi Matthew,
This is a bug with the PowerShell script. Please check there.
Thanks.
Customer support service by UserEcho