Check out the latest features available in Dynamics 365 for Customer Engagement, including LinkedIn Connect, Voice of the Customer and Universal Resource Scheduling.
Dynamics 365 2019 release wave 2 plan Discover the latest updates to Dynamics 365.Release Plan | Weekly Deployment Notes
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants.Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements.
ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance and Operations TechTalks | Customer Engagement TechTalks | Talent TechTalks
I have been troubleshooting an error - " Principal user (Id=xxxxxxxxxxxxxxxxxxxx, type=8) is missing prvRead..... "
I have done this before several times, been able to find the User and the privilege and then sort it out quickly.
- however with this latest error, when I search for the Principal User guid specified in the error message it does not exist in the systemuserbase (or Teambase)!Has anyone any experience of this / advice?
A couple of possibilities:
Also, if you have multiple organisations, check that you're looking in the systemuserbase table in the correct database
Hi David. - good suggestions, thanks. I'm in the right organisation and I have checked all the other possible tables - but no sign of this Guid?? If the code is trying to impersonate a User surely that Userid should still exist in the SystemUserBase (or TeamBase)??
Open a user record, get the URL, and replace the record ID with this GUID you are getting in the error message and see if it opens a record
Thanks Kokulan - tried that - "system user with that id does not exist".
Could you please share the detail about at what point you are getting this error? and any screenshot if possible
The original error - Principal user (Id=xxxxxxxxxxxxxxxxxxxx, type=8) is missing prvRead appears in a tracelog which is written to during the execution of a C# console app (which creates/updates contacts). I turned on tracing originally because I was getting an occasional/random error (caught exception) which stated
"An error occured while processing this request. inner exception: System.ServiceModel.FaultException`1[Microsoft.Xrm.Sdk.OrganizationServiceFault]: The plug-in execution failed because no Sandbox Worker processes are currently available. Please try again.
System.ServiceModel.CommunicationException: Microsoft Dynamics CRM has experienced an error. Reference number for administrators or support: #08BA0CE4 (Fault Detail is equal to Microsoft.Xrm.Sdk.OrganizationServiceFault)."
Re impersonation. If any code is impersonating a user, then well-written code should get the userid from systemuserbase, but there's no guarantee that it does - it could use some hard-coded value that is incorrect. I don't know if CRM would try and verify the systemuserid (and throw a different error from the one you get if it is missing), or if it just checks for permissions first, which would give the message you get
The trace log is enabled for all the instances of CRM. I normally use the CRM Trace Reader and filter the trace by Org ID to make sure im relating the error message to the right
There is a possibility that the user exist on one of the other instance not the one you are checking.
Thanks David and Kokulan.
We have two orgs - the User exists in neither. It doesn't help that the original error is sporadic/infrequent. I will turn tracing on and try to provoke it again next week.
Business Applications communities