Today, while setting up our new environment, I came across the following error:
The EXECUTE permission was denied on the object ‘ArrayOfGuids’, database ‘SitecoreExperienceLabSitecore_Analytics’, schema ‘dbo’.
This seems to be an easy issue to fix. The error clearly says the user does not has execute access to the ‘ArrayOfGuids‘ table in the Analytics Database. But, if you open the Sitecore Analytics Database, you will see that there is no table with such name.
Moreover, instead of ‘ArrayOfCuids‘, you may also have the same error except that the object is changed to ‘ArrayOfRanges‘.
By decompiling the Sitecore.PathAnalyzer.dll, navigate to the following namespace
and search for the word ‘ArrayOfCuids‘. You will see that there are different methods making use of it. Below is a screenshot of the code where it is being used:
From the code, it clearly states that the ‘ArrayOfGuids’ is a Type. Please see screenshot below from the SQL Server
In order to fix the issue, all you need is to allow permission on the different table type or just run the following SQL Script to allow Execute Permission of the Table Types:
GRANT EXECUTE ON TYPE::[dbo].[ArrayOfGuids] TO [SqlUserName] GRANT EXECUTE ON TYPE::[dbo].[ArrayOfRanges] TO [SqlUserName]
You may use the same statment to set the Execute Permission on the other Table Type.