This one was identified by my colleague Thomas Stern. The Sitecore Digital Marketing System (formerly known as Sitecore OMS, affectionally known as Sitecore Analytics) uses the master database per default as its lookup database. This is great for people who doesn’t like to publish their contents, bad for people who uses staged environments where the front-end server have no access to the master database.
If you have DMS enabled on a front end server with no access to the master database, you will get the following errors in your log:
Exception: System.InvalidOperationException Message: Could not find configuration node: databases/database[@id='master'] Source: Sitecore.Kernel
The problem is easily resolved using the hidden feature “Analytics.DefaultDefinitionDatabase”. Create a .include file (or add the setting directly to the web.config) and set the Default Definition Database to “web”:
<configuration> <sitecore> <settings> <setting name=“Analytics.DefaultDefinitionDatabase“ value=“web“ /> </settings> </sitecore> </configuration>
Remember to instruct your Analytics people to publish their changes.