So I was trying to troubleshoot this Biztalk 2006 R2 orchestration that includes importing some data into a Commerce Server 2007 instance. CS doesn’t really want to play ball, so I decide to upgrade it to the latest service pack as that’s supposed to resolve some of the issues. Download SP2, install, migrate, restart IIS… BOOM! Exception:
MissingFieldException: Field not found: 'Microsoft.CommerceServer.Catalog.Internal.Constants.CatalogResourceMajorVersion'.]
Microsoft.CommerceServer.Catalog.CatalogContext.InternalCreate(CatalogSiteAgent catalogSiteAgent, DebugContext debugContext, CacheConfiguration cacheConfiguration) +708
Microsoft.CommerceServer.Runtime.Catalog.CommerceCatalogModule.OnBeginRequest(Object sender, EventArgs e) +24
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +171
Google is, for once, silent… So I check the GAC and compare the version Microsoft.CommerceServer.Catalog.dll to the other CS dlls – bingo, the version of the dll is 6.0.3724.0. A quick search leads you to this MSDN blog post which tells you which version corresponds to which SP…
Apparently the dll failed to register during the sp2 install which led to the weirdness described above.
As I couldn’t find the right dll anywhere and was not able to reinstall sp2 I had to install sp1 and THEN sp2. This finally took care of the problem.