Wednesday, July 4, 2007

dtSearch on Sitecore

If u are running a Sitecore installtion with master and slave server u don't wan't the slave server th have a master database installed. And the thing is when u have dtSearch installed it dosen't work without a master database.
Well there is a work around(still testing this).

Open the connection config file and add this line:

<connections serverName="127.0.0.1" prefix="sc" user="user" password="password">

<extranet>data source=$(serverName);initial catalog=$(prefix)Extranet;user
id=$(user);password=$(password);Connect Timeout=30</extranet>
<web>data source=$(serverName);initial catalog=$(prefix)Web;user
id=$(user);password=$(password);Connect Timeout=30</web>

<!-- Copy the web connection and change it to master -->

<master>data source=$(serverName);initial catalog=$(prefix)Web;user
id=$(user);password=$(password);Connect Timeout=30</master>

</connections>


And in the web.config file:
<!-- web -->

<database id="web" singleInstance="true" type="Sitecore.Data.Database, Sitecore.Kernel">
<param desc="name">$(id)</param>
<securityEnabled>true</securityEnabled>
<dataProviders hint="list:AddDataProvider">
<dataProvider ref="dataProviders/main" param1="$(id)">
<disableGroup>publishing</disableGroup>
<prefetch hint="raw:AddPrefetch">
<sc.include file="/App_Config/Prefetch/Common.config"/>
<sc.include file="/App_Config/Prefetch/Web.config"/>
</prefetch>
</dataProvider>
</dataProviders>

<proxiesEnabled>false</proxiesEnabled>
<proxyDataProvider ref="proxyDataProviders/main" param1="$(id)"/>
<cacheSizes hint="setting">
<children>1000KB</children>
<credentials>1000KB</credentials>
<data>200MB</data>
<items>100MB</items>
<parents>1000KB</parents>
<paths>5000KB</paths>
</cacheSizes>
</database>

<!-- Master: Copy web database and change the id to master -->
<database id="master" singleInstance="true" type="Sitecore.Data.Database, Sitecore.Kernel">

<param desc="name">$(id)</param> <securityEnabled>true</securityEnabled>
<dataProviders hint="list:AddDataProvider">
<dataProvider ref="dataProviders/main" param1="$(id)">
<disableGroup>publishing</disableGroup>
<prefetch hint="raw:AddPrefetch">
<sc.include file="/App_Config/Prefetch/Common.config"/>
<sc.include file="/App_Config/Prefetch/Web.config"/>
</prefetch>
</dataProvider>
</dataProviders>
<proxiesEnabled>false</proxiesEnabled>
<proxyDataProvider ref="proxyDataProviders/main" param1="$(id)"/>
<cacheSizes hint="setting">
<children>1000KB</children>
<credentials>1000KB</credentials>
<data>200MB</data>
<items>100MB</items>
<parents>1000KB</parents>
<paths>5000KB</paths>
</cacheSizes>
</database>


That will do the trick with the dtSearch to make it work on a slave server. But u do this on your own risk.

cms and stuff - new iPhone :)