Symptoms
Client event notifications stopped sending. No easily detectable errors seen, the emails just stopped coming out.
Diagnoses
A check of the EventBus.ClientRecorderError table turned up this error:
CustomEventID: 72 CustomEventLogID: 200
System.Exception: Unable to resolve a value for the following field '' using provider '' with provider data ''. 'SourceCode.Framework.Data.GetValueException: An unexpected error has occured while trying to resolve a value for Resolver ID 106C5886-18B1-4c09-BEB3-6F7342669D18. ---> SourceCode.Framework.Data.GetValueException: An unexpected error has occured while trying to resolve a value for Resolver ID 22d1b47c-1d4a-4a8f-9f7e-3cb991e144c6. ---> System.InvalidCastException: Unable to cast result.
at SourceCode.Workflow.Data.Resolvers.K2FieldResolver.BuildReturnValue(ArrayList resultList, Type valueType, Boolean isList, ListType listType)
at SourceCode.Workflow.Data.Resolvers.FunctionFieldPartResolver.OnGetValue(String data)
at SourceCode.Framework.Data.ResolverManager.GetValue(String runtimeData)
--- End of inner exception stack trace ---
at SourceCode.Framework.Data.ResolverManager.GetValue(String runtimeData)
at SourceCode.Workflow.Data.Resolvers.K2FieldResolver.OnGetValue(String data)
at SourceCode.Framework.Data.ResolverManager.GetValue(String runtimeData)
--- End of inner exception stack trace ---
at SourceCode.Framework.Data.ResolverManager.GetValue(String runtimeData)
at SourceCode.EventBus.Mapping.Resolver.ResolveEventPolicy(Objectand context, Mapper mapper, EventPolicyMapping eventPolicyMapping)'
at SourceCode.EventBus.Mapping.Resolver.ResolveEventPolicy(Objectand context, Mapper mapper, EventPolicyMapping eventPolicyMapping)
at SourceCode.EventBus.ClientRecorder.Event.RaiseEvent(Object context, String providerID, String eventName, String data)
The error itself indicates that a function is being used in the email construction and that it is not receiving the proper parameters, specifically the "Unable to cast result" which implies that the function is producing on datatype but is expecting another.
Resolution
It turned out that in this case a join function was throwing out an XML error (this was determined by the client after being asked about what functions were used in the client event notifications). The function itself was removed.