.Net Runtime Version Mismatch

Use this forum for questions on how to use .NET Memory Profiler and how to analyse memory usage.
Post Reply
vfab
Posts: 2
Joined: Wed Aug 24, 2011 7:16 pm

.Net Runtime Version Mismatch

Post by vfab » Wed Aug 24, 2011 7:52 pm

I am encountering the .Net run-time version error referencing mscordacwks.dll, and I've seen several posts related to that. My issue seems unique, however, due to the fact that my local .Net framework actually matches the version where the dump file was generated. So the dialog is saying that I need to have v2.0.50727.4961 (64 bit), and that's the version installed on the machine where I'm trying to import the memory dump.

So why is it rejecting my run-time version when it's actually the correct version?

It's worth mentioning that I've submitted a request to my manager to purchase licenses of this software, but he's not impressed that I can't get it to work. Help!?

Thanks in advance!

Andreas Suurkuusk
Posts: 1005
Joined: Wed Mar 02, 2005 7:53 pm

Re: .Net Runtime Version Mismatch

Post by Andreas Suurkuusk » Wed Aug 24, 2011 9:07 pm

It's odd that you get a version mismatch in your case. To be able to get more information about this problem, it would be good if we could try to import the memory dump ourselves. Is there any possibility for you to provide us with the memory dump file? If so, please contact us at support@scitech.se so that we can send you information on how to upload the dump file to us. It might also be a good idea for you to provide us with the sos.dll file and the mscordacwks.dll file from your machine.
Best regards,

Andreas Suurkuusk
SciTech Software AB

vfab
Posts: 2
Joined: Wed Aug 24, 2011 7:16 pm

Re: .Net Runtime Version Mismatch

Post by vfab » Thu Aug 25, 2011 3:17 pm

I actually figured this one out by getting it to work in WinDbg first. I tried:
.loadby sos clr
!eeheap

...and WinDbg told me it was looking for mscordacwks_AMD64_AMD64_4.0.30319.235.dll. So I copied mscordacwks.dll to the WinDbg folder and renamed it as requested. Then WinDbg worked just fine.

The confusing thing is that .Net Memory Profiler was prompting me for the location of the v2.0.50727.4961 (64 bit) version of mscordacwks.dll. But I instead entered the path to the mscordacwks_AMD64_AMD64_4.0.30319.235.dll, and then it worked and loaded the dump file.

Bug?

Andreas Suurkuusk
Posts: 1005
Joined: Wed Mar 02, 2005 7:53 pm

Re: .Net Runtime Version Mismatch

Post by Andreas Suurkuusk » Thu Aug 25, 2011 9:14 pm

It does sound like a bug in the profiler. It is possible to load both .NET runtime 2.0 and 4.0 into the same process. When importing a memory dump, the profiler will only import data from one of the runtimes, and the v4.0 runtime is supposed to have higher priority.

Do you have two runtimes loaded into your process?

We would like to investigate this further and find out what's causing the problem, but then we would need to look at the memory dump file. Is there any possibility for you to provide us with the memory dump file? If so, please contact us at support@scitech.se so that we can send you information on how to upload the dump file to us.
Best regards,

Andreas Suurkuusk
SciTech Software AB

abhishekgoenka
Posts: 2
Joined: Thu Feb 13, 2014 4:00 am

Re: .Net Runtime Version Mismatch

Post by abhishekgoenka » Thu Feb 13, 2014 4:05 am

I am also getting similar error in V4.6. The issue is observed only in case of W3WP dumps. I am ok to upload dump file, in case you want to reproduce the issue.
Abhi

abhishekgoenka
Posts: 2
Joined: Thu Feb 13, 2014 4:00 am

Re: .Net Runtime Version Mismatch

Post by abhishekgoenka » Fri Feb 14, 2014 3:58 am

After doing little more debugging, I found that Microsoft symbol server is not properly indexed and due to that required version of mscordacwks is not getting downloaded.
Abhi

Andreas Suurkuusk
Posts: 1005
Joined: Wed Mar 02, 2005 7:53 pm

Re: .Net Runtime Version Mismatch

Post by Andreas Suurkuusk » Fri Feb 14, 2014 3:12 pm

Thanks for sending us the memory dump and for the update regarding mscordacwks. The Microsoft symbol server does not always have the correct version of mscordacwks available (I believe this is more common for hot-fix versions of the runtime). If the symbol server does not provide the correct version of mscordacwks, you need to specify the file manually. Using the mscordacwks file you sent, I managed to import the memory dump, so I assume that you have successfully imported it as well?
Best regards,

Andreas Suurkuusk
SciTech Software AB

Post Reply

Who is online

Users browsing this forum: No registered users and 6 guests