Last post Dec 19, 2006 09:39 AM by DGaikovoi
Dec 11, 2006 05:32 AM|pdabak|LINK
I have written a provider that is registered with MPS. While executing the method in the provider, I get the following error
<response><errorContext description="Resolution of execute statements failed fro
m a procedure=main namespace=request executing procedure=MyMethod namespace=MyNamespace. Check Event Viewer for additional namespace load errors." code="0xc2201
My namespace is registered properly and is visible in the provisioning manager GUI.
I started filemon to see the file system activity and it is not even reaching to the point where it will load my provider's assembly.
What are the typical causes for the above error message?
Dec 11, 2006 09:01 AM|DGaikovoi|LINK
Any error messages in Event Viewer?
Did you registred you provider as a COM component?
Dec 12, 2006 01:18 AM|pdabak|LINK
There are no error messages in Event viewer except the one that is same as shown by provtest.exe.
Yes, I registered my provider as a COM component.
Interestingly, if I get rid of some other providers in the system, my provider starts working fine. My provider doesn't depend on any other providers and no other providers depend on my provider. This makes me believe, that, there may be some hardcoded limit
on number of providers that can be registered in the system. Any idea?
Dec 12, 2006 09:35 AM|DGaikovoi|LINK
When you said - "I get rid of some other providers in the system..." - do you mean custom made providers (like yours) or standard providers?
Did you use MPS SDK for your provider development?
Dec 18, 2006 02:41 AM|pdabak|LINK
I got rid of some random set of standard providers. There is one more intersting observation.
When you add/remove providers, typically, following message is posted in the event viewer.
"Provisioning Engine Successfully updated the named procedure definitions from the configuration database"
We observe, that, on the setups where we run into issues, above message is not posted in the event viewer, when we register our provider using ProvNamespace.exe. Later when we get rid of some random set of
standard providers, eventually, above message is posted in the event viewer and then our provider starts working fine.
We also notice that there is a registry value called HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Provisioning\Engine\Namespace Cache. We suspect, that, when the above message is posted in the event viewer, it is
actually updating this registry value and namespace loading always happens using the cached list in the registry. This is why, till the above message is not posted, our provider is not recongnized.
So that leads to question: Under what circumstances it may happen that the namespace cache is not updated after registering the provider in the system?
Dec 18, 2006 11:07 AM|DGaikovoi|LINK
According to Provisioning Manager Help: "The provisioning engine checks the configuration database for namespace changes every five minutes or on restart of the provisioning engine COM+ application in Component Services." Could you check if MPS Engine restart
immediately after provider registration solves your issue?
Dec 19, 2006 08:29 AM|pdabak|LINK
Dec 19, 2006 09:39 AM|DGaikovoi|LINK
Could you post post your namespace registration XML and sample request?