Monday, August 28, 2017

Loading this assembly would produce a different grant set from other instances

Recently in our test environment we encountered this error when we tried  to open the site.

I thought it might be some cache issue or db might got locked for that specific site. So I tried to open sharepoint central admin site then it started throwing this error.

Just before 5 minutes all the sites were working and after that suddenly it stopped after I deployed one of the dll to gac and did an iisreset.

I thought it might be due to latest version of the dll its breaking and I reverted the older version of the dll, but still I was getting the error.

Then I started trouble shooting issue by keep on checking one by one, is there any windows update installed recently, but there was no updates.

So service packs. no language packs no windows updates. Then I check the control panel to see is any other tools/software installed recently, luckily there was tool called Microsoft monitoring agent which is used for SCOM alert.

Our admin team have upgraded SCOM 2012 to SCOM 2016 which is culprit in my case.

Why this will break the application/sites?

Yes why this should break the application. As everyone is aware sharepoint is very complex and brittle in nature. It doesn't allow any other assemblies or any other tool to come in its way.

In our case this monitoring tool tried to inject their assemblies in sharepoint worker process and it caused all the worker process to broke.

In order to fix this issue I asked our admin team to uninstall the SCOM client and install it manually with NO APM=1

This exercise needs to be done in all sharepoint server where its installed.

If any one of you faced this issue and googled out there are plenty resources available which suggest to update registry entry or update web config file of the application.

All the above workaround doesn't work and even if it works we are loosing some thing which we are not aware what might it will break in the future.

Better to avoid all those and tried to verify if any tool/software has been installed recently based on this you can take the decision.