If your system stores documents on a different server to where ClickHome is installed, you might find Groveller does not detect all the changes to the documents. This is because in some network configurations, the notifications generated by the Windows File Server to notify groveller of document changes can be lost or unreliable over the network.


To work around this, you can install a groveller agent on the same computer as where the documents are stored, and update this into the database.


This is how it works:


  1. Documents are stored onto the hard drive of the document server - and Windows tells the groveller agent that a file was changed (created, updated, deleted) on D:
  2. Groveller agent takes details about the network share and drive mapping to get a full file path using the network share instead of the local drive.
  3. Groveller agent runs the groveller process on the document and if it matches, it updates it into ClickHome - referencing the full file path, not the local drive.
  4. When a user asks for documents from ClickHome, ClickHome returns the full file share path.
  5. The users computer and browser get a full file path to access the document, and it asks the document server for relevant document.
  6. The document server returns the original document.




When you set up Groveller Agent on a separate server, please locate the following config Settings, these need to be Maintained and updated Manually on all consecutive upgrades.


<applicationSettings>

    <ClickHome.WindowsService.GrovellerOverrides>

      <setting name="Mode" serializeAs="String">

        <!-- Options here are 

              SingleServer

               - this is the default setup of a server - only one windows service is running - it handles groveller if configured

              CentralServerOff

               - if groveller is being run on a separate server - this is the central server - it should be off so it does not use the groveller settings

              SatelliteServerOn

              - if groveller is being run on a separate server - this is the satellite server - it should be on so it does use the groveller settings

        -->

        <value>SatelliteServerOn</value>

      </setting>

      <setting name="SatelliteName" serializeAs="String">

        <!-- 

        This is just a name - in future we may configure multiple satellite servers.. currently only one is supported it is used in logging.

        -->

        <value />

      </setting>

      <setting name="Mapping" serializeAs="String">

        <!-- 

        this is a split string, split by | pipe symbol

        the first part matches the directory where we detected in the file system watcher.. eg D:\Shares\Projects... gets shared as \\servername\Projects

        the second part is the substitute that represents how other servers and remote users access it.

        

        The search part - the first part - it is case sensitive

        

        eg 

        D:\Shares\Projects|\\servername\Projects

        -->


        <value>C:\GrovellerTesting|\\IMGUTL01\Groveller</value>

      </setting>

    </ClickHome.WindowsService.GrovellerOverrides>

  </applicationSettings>



You would also need to change the web.config of the standard service and make sure the groveller override setting is changed to:  CentralServerOff.


The same goes for any future upgrade, this setting needs to be changed manually.