SBX - Search With Button

SBX - Forum Post Title

Some Problems after UR 12 - MissingMethodException

Microsoft Dynamics CRM Forum

Benjamin Schauer asked a question on 25 Feb 2013 4:00 AM
My Badges

Question Status

Verified

Hello!

We have some troubles since the installation of UR12 in CRM 2011. Workflows and Dialogs will not run and button "Download Log File" button in an error message is inactive!?

CRMAsyncService in Tracelog

>Crm Exception: Message: , ErrorCode: -2147220970
[2013-02-25 12:43:51.358] Process:CrmAsyncService |Organization:00000000-0000-0000-0000-000000000000 |Thread: 7 |Category: Exception |User: 00000000-0000-0000-0000-000000000000 |Level: Error |ReqId: de902d31-f493-4109-b227-2fa53f467b00 | CrmException..ctor ilOffset = 0x0
at CrmException..ctor(String message, Exception innerException, Int32 errorCode, Boolean isFlowControlException) ilOffset = 0x0
at CrmException..ctor(String message, Exception innerException, Int32 errorCode) ilOffset = 0x0
at WorkflowToAsyncResultConverter.Convert() ilOffset = 0x9D
at WorkflowContext.EndProcessing(IGenericHandlerResult result) ilOffset = 0xC
at ActivityHostBase.StartWorkflow(ICommonWorkflowContext context, Activity preLoadedActivity) ilOffset = 0xA
at ActivityHostBase.StartWorkflow(ICommonWorkflowContext context) ilOffset = 0x8E
at WorkflowOperation.InternalExecute(AsyncEvent asyncEvent) ilOffset = 0x44
at AsyncOperationCommand.Execute(AsyncEvent asyncEvent) ilOffset = 0x4E
at PoolHandler.ProcessAsyncEvent(IGenericEventData eventData) ilOffset = 0x139
at <>c__DisplayClass4.<.ctor>b__2(IServiceOperation operation) ilOffset = 0x0
at FaultToleranceBehavior.Execute(ServiceOperationAction operation, IServiceOperation operationParameter) ilOffset = 0x18
at MonitoredOperation.Execute() ilOffset = 0xD
at ThreadPoolQueueExecutionEngine.InvokeNextOperationInThreadPool(Object state) ilOffset = 0xC
at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) ilOffset = 0x71
at QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() ilOffset = 0x23
at ThreadPoolWorkQueue.Dispatch() ilOffset = 0x81
at _ThreadPoolWaitCallback.PerformWaitCallback() ilOffset = 0x51

And then...

>Crm Exception: Message: Invalid type conversion., ErrorCode: -2147220715,InnerException: System.MissingMethodException: Method not found: 'Void Microsoft.Xrm.Sdk.BaseServiceFault.set_InnerServiceFault(Microsoft.Xrm.Sdk.BaseServiceFault)'.
at Microsoft.Crm.ExceptionConverter.ConvertToFault(Exception exception)
at Microsoft.Crm.ExceptionConverter.TryConvertToFaultExceptionInternal(Exception exception, Boolean createNewFaultException, FaultException`1& faultException)
at Microsoft.Crm.Asynchronous.AsyncHandlerResultWithError.CopyExceptionDetails(Exception ex, Int32 defaultErrorCode)
at Microsoft.Crm.Workflow.WorkflowToAsyncResultConverter.Convert(WorkflowSystemPausedResult wfResult)
at Microsoft.Crm.Workflow.WorkflowToAsyncResultConverter.Convert()
[2013-02-25 12:43:51.358] Process:CrmAsyncService |Organization:f8f30bfc-fe6f-e011-926a-005056902738 |Thread: 7 |Category: Platform.Async |User: 00000000-0000-0000-0000-000000000000 |Level: Error |ReqId: de902d31-f493-4109-b227-2fa53f467b00 | AsyncOperationCommand.Execute ilOffset = 0x4E
at AsyncOperationCommand.Execute(AsyncEvent asyncEvent) ilOffset = 0x4E
at PoolHandler.ProcessAsyncEvent(IGenericEventData eventData) ilOffset = 0x139
at <>c__DisplayClass4.<.ctor>b__2(IServiceOperation operation) ilOffset = 0x0
at FaultToleranceBehavior.Execute(ServiceOperationAction operation, IServiceOperation operationParameter) ilOffset = 0x18
at MonitoredOperation.Execute() ilOffset = 0xD
at ThreadPoolQueueExecutionEngine.InvokeNextOperationInThreadPool(Object state) ilOffset = 0xC
at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) ilOffset = 0x71
at QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() ilOffset = 0x23
at ThreadPoolWorkQueue.Dispatch() ilOffset = 0x81
at _ThreadPoolWaitCallback.PerformWaitCallback() ilOffset = 0x51
>Exception while trying to execute AsyncOperationId: {3B480604-BA7C-E211-96D3-005056A2004D} AsyncOperationType: 10 - Microsoft.Crm.CrmNotSupportedException: Invalid type conversion. ---> System.MissingMethodException: Method not found: 'Void Microsoft.Xrm.Sdk.BaseServiceFault.set_InnerServiceFault(Microsoft.Xrm.Sdk.BaseServiceFault)'.
at Microsoft.Crm.ExceptionConverter.ConvertToFault(Exception exception)
at Microsoft.Crm.ExceptionConverter.TryConvertToFaultExceptionInternal(Exception exception, Boolean createNewFaultException, FaultException`1& faultException)
at Microsoft.Crm.Asynchronous.AsyncHandlerResultWithError.CopyExceptionDetails(Exception ex, Int32 defaultErrorCode)
at Microsoft.Crm.Workflow.WorkflowToAsyncResultConverter.Convert(WorkflowSystemPausedResult wfResult)
at Microsoft.Crm.Workflow.WorkflowToAsyncResultConverter.Convert()

and..

>MessageProcessor fail to process message 'RetrieveMultiple' for 'workflowdependency'.
[2013-02-25 12:31:19.160] Process:CrmAsyncService |Organization:f8f30bfc-fe6f-e011-926a-005056902738 |Thread: 18 |Category: Platform |User: 7cef8412-ff6f-e011-926a-005056902738 |Level: Error |ReqId: 093d7790-508e-4bd9-bf4f-931cbd665b50 | MessageProcessor.Execute ilOffset = 0x1C5
at MessageProcessor.Execute(PipelineExecutionContext context) ilOffset = 0x1C5
at InternalMessageDispatcher.Execute(PipelineExecutionContext context) ilOffset = 0xE4
at ExternalMessageDispatcher.ExecuteInternal(IInProcessOrganizationServiceFactory serviceFactory, IPlatformMessageDispatcherFactory dispatcherFactory, String messageName, String requestName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, ParameterCollection fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId, Guid transactionContextId, Int32 invocationSource, Nullable`1 requestId, Version endpointVersion) ilOffset = 0x156
at OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, UserAuth userAuth, Guid targetUserId, Boolean traceRequest, OrganizationContext context, Boolean returnResponse) ilOffset = 0x145
at OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType) ilOffset = 0x34
at OrganizationSdkServiceInternal.RetrieveMultiple(QueryBase query, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType) ilOffset = 0x2D
at InprocessServiceProxy.RetrieveMultipleCore(QueryBase query) ilOffset = 0x26
at WorkflowContextBase.get_EntityDependencies() ilOffset = 0x1A
at WorkflowContextBase.RetrieveEntityInstances() ilOffset = 0x9
at ActivityHost.StartWorkflowExecution(Activity workflow, ICommonWorkflowContext context) ilOffset = 0x137
at ActivityHostBase.StartWorkflow(ICommonWorkflowContext context, Activity preLoadedActivity) ilOffset = 0xA
at ActivityHostBase.StartWorkflow(ICommonWorkflowContext context) ilOffset = 0x8E
at WorkflowOperation.InternalExecute(AsyncEvent asyncEvent) ilOffset = 0x44
at AsyncOperationCommand.Execute(AsyncEvent asyncEvent) ilOffset = 0x4E
at PoolHandler.ProcessAsyncEvent(IGenericEventData eventData) ilOffset = 0x139
at <>c__DisplayClass4.<.ctor>b__2(IServiceOperation operation) ilOffset = 0x0
at FaultToleranceBehavior.Execute(ServiceOperationAction operation, IServiceOperation operationParameter) ilOffset = 0x18
at MonitoredOperation.Execute() ilOffset = 0xD
at ThreadPoolQueueExecutionEngine.InvokeNextOperationInThreadPool(Object state) ilOffset = 0xC
at ExecutionContext.runTryCode(Object userData) ilOffset = 0x18
at RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData) ilOffset = 0xFFFFFFFF
at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) ilOffset = 0x86
at QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() ilOffset = 0x23
at ThreadPoolWorkQueue.Dispatch() ilOffset = 0x81
at _ThreadPoolWaitCallback.PerformWaitCallback() ilOffset = 0x51

The Asynchronous Processing Service is running but we have two suspicious errors in Windows-Eventlog:

Source: MSCRMAsyncService:
HostXXX: failed while monitoring asynchronous operations queue. Exception: System.NullReferenceException: Object reference not set to an instance of an object.

at Microsoft.Crm.Asynchronous.QueueManager.UpdateEventState(AsyncEvent asyncEvent, AsyncHandlerResult result)
at Microsoft.Crm.Asynchronous.PoolHandler.ProcessAsyncEvent(IGenericEventData eventData)
at Microsoft.Crm.Asynchronous.Operations.AsyncEventOperation.<>c__DisplayClass4.<.ctor>b__2(IServiceOperation operation)
at Microsoft.Crm.Behaviors.FaultToleranceBehavior.Execute(ServiceOperationAction operation, IServiceOperation operationParameter)
at Microsoft.Crm.Operations.MonitoredOperation.Execute()
at Microsoft.Crm.Asynchronous.ThreadPoolQueueExecutionEngine.InvokeNextOperationInThreadPool(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

And a second Error:

 Source: MSCRMWebService:

The Web Service plug-in failed in OrganizationId: f8f30bfc-fe6f-e011-926a-005056902738; SdkMessageProcessingStepId: 75ccbb1b-ea3e-db11-86a7-000a3a5473e8; EntityName: workflowdependency; Stage: 30; MessageName: RetrieveMultiple; AssemblyName: Microsoft.Crm.Extensibility.InternalOperationPlugin, Microsoft.Crm.ObjectModel, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; ClassName: Microsoft.Crm.Extensibility.InternalOperationPlugin; Exception: Unhandled Exception: System.MissingMethodException: Method not found: 'System.Nullable`1<Int32> Microsoft.Xrm.Sdk.Query.QueryByAttribute.get_TopCount()'.
at Microsoft.Crm.Query.EntityExpression.FromSdkQueryVisitor.Visit(QueryByAttribute query)
at Microsoft.Crm.Query.EntityExpression.InitializeFromQuery(QueryBase query)
at Microsoft.Crm.Query.EntityExpression.Converter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
at Microsoft.Crm.BusinessEntities.ConversionHelpers.Convert(ICrmConversionContext conversionContext, Object source, Type destinationType)
at Microsoft.Crm.Extensibility.DictionaryMapper.Map(ParameterCollection inputs, ICrmConversionContext context)
at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IServiceProvider serviceProvider)
at Microsoft.Crm.Extensibility.V5PluginProxyStep.ExecuteInternal(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context)
.

Anyone with the same problem here?

Many Thanks!

Best Regards,
Benjamin  

 

Reply
Gus Gonzalez responded on 25 Feb 2013 6:31 AM
My Badges

Benjamin,

Is this happening for all workflows or custom workflows?

Reply
Benjamin Schauer responded on 25 Feb 2013 6:39 AM
My Badges

Hello Gus,

hmm, can you give me an expample for another workflow than custom?

Custom Workflows and Dialogs fail.

Many Thanks!

Reply
Gus Gonzalez responded on 25 Feb 2013 7:04 AM
My Badges

Can you create a simple workflow and see if it runs?

For example, a workflow that sends an email when a lead is created or something like that.

Reply
Benjamin Schauer responded on 26 Feb 2013 1:53 AM
My Badges
Verified Answer

Hello Gus,

i resolved the problem today :)

I was sure, that the problems cause from an old Microsoft.Xrm.Sdk.dll.

So i found a version, which was not up to date after RU12 installation - In .net GAC:

C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Xrm.Sdk\v4.0_5.0.0.0\Microsoft.Xrm.Sdk.dll

How to resolve the Problem:

1. Stop Asynchronous Processing Service (And helper Service)

2. Save the .dll in the folder

3. Replace it with Microsoft.Xrm.Sdk.dll from C:\<Path to CRM>\Server\bin

4. iisreset

5. Start the services

Now, everything works fine!

Thank you for your help!

Best Regards,

Benjamin

Reply
Juan Trujillo responded on 11 Jul 2013 6:55 AM
My Badges

Hi Benjamin,

Could you please clarify where did you get the correct .dll version form? You say you found a version that was not up to date after installing RU12, which should be the correct version?

Step # 2 says" Save dll in the folder", which version of the dll is that?

Thanks

Reply
Benjamin Schauer responded on 15 Jul 2013 11:33 AM
My Badges

I had this problem because the Rollup 12 Setup did not replace this DLL in GAC:

C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Xrm.Sdk\v4.0_5.0.0.0\Microsoft.Xrm.Sdk.dll

You can find the same DLL Microsoft.Xrm.Sdk.dll in some other folders in your CRM Installation.

For Example: C:\Program Files\Microsoft Dynamics CRM,.... anywhere in this Folder-Tree you will find a Microsoft.Xrm.Sdk.dll

Please Check the Versions of your .dll in GAC and the Version auf .dll in your CRM Installation Folder. If the Versions are not the same - please replace the dll in GAC with the other in your CRM Installation. But please save your .dll in GAC folder first!

Br

Benjamin

Reply
bostanok responded on 5 Mar 2015 1:14 AM

Hi,

Same issue occurred after upgrading CRM 2013 to CRM2013 SP1, I followed your solution steps  and problem gone.  

Thanks for the answer.

Reply
Bachchan responded on 7 Sep 2015 10:18 AM
My Badges

Hi Benjamin,

I am not getting the folder Microsoft.Xrm.Sdk at the path C:\Windows\Microsoft.NET\assembly\GAC_MSIL.  I can see the file at CRM>\Server\bin. Where to locate the 1st file?

Reply
Manoj Batchu responded on 7 Sep 2015 2:37 PM
My Badges
Suggested Answer

Hello Bachchan,

If you don't find Microsoft.Xrm.Sdk in C:\Windows\Microsoft.NET\assembly\GAC_MSIL, you can use GACUTIL and register the latest version of Microsoft.Xrm.Sdk.dll you have in your environment.

Reply
Benjamin Schauer responded on 26 Feb 2013 1:53 AM
My Badges
Verified Answer

Hello Gus,

i resolved the problem today :)

I was sure, that the problems cause from an old Microsoft.Xrm.Sdk.dll.

So i found a version, which was not up to date after RU12 installation - In .net GAC:

C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Xrm.Sdk\v4.0_5.0.0.0\Microsoft.Xrm.Sdk.dll

How to resolve the Problem:

1. Stop Asynchronous Processing Service (And helper Service)

2. Save the .dll in the folder

3. Replace it with Microsoft.Xrm.Sdk.dll from C:\<Path to CRM>\Server\bin

4. iisreset

5. Start the services

Now, everything works fine!

Thank you for your help!

Best Regards,

Benjamin

Reply
Manoj Batchu responded on 7 Sep 2015 2:37 PM
My Badges
Suggested Answer

Hello Bachchan,

If you don't find Microsoft.Xrm.Sdk in C:\Windows\Microsoft.NET\assembly\GAC_MSIL, you can use GACUTIL and register the latest version of Microsoft.Xrm.Sdk.dll you have in your environment.

Reply

SBX - Two Col Forum

SBX - Migrated JS