For every server that creates, updates or deletes profiles or orders you must perform the following:

  1. Add DPS.Search.Index and DCS.Search.Order.Index modules to the EAR file on the agent-facing servers, if not already present. Also add these modules to the EAR file for your customer-facing and management servers.

  2. You must pick an internal server that will be your live indexing server. For a production environment, this should be done on a dedicated server. Note: Only one server can be the indexing server. When creating the live indexing server ensure that you have added the DAF.Search.Routing, DPS.Search.Index, DCS.Search.Order.Index, DAF.Search.Index and DAFEar.Admin modules to the EAR file.

  3. Edit the following properties files in the live indexing server /localconfig directory with the following settings:

    /localconfig/atg/commerce/pricing/pricelists/PriceLists.properties
    /localconfig/atg/commerce/inventory/InventoryRepository.properties
    /localconfig/atg/commerce/order/OrderRepository.properties
    /localconfig/atg/userprofiling/ProfileAdapterRepository.properties
    /localconfig/atg/content/Media/MediaRepository.properties

    Add the following to the properties files:

    idGenerator=/atg/dynamo/service/IdGenerator_production
    lockManager=/atg/dynamo/service/ClientLockManager_production
    dataSource=/atg/dynamo/service/jdbc/JTDataSource_production
    subscriberRepository=/atg/dynamo/service/jdbc/SQLRepository_production
    eventServer=/atg/dynamo/server/SQLRepositoryEventServer_production

  4. Edit the following properties files in the live indexing server /localconfig directory with the following settings:

    /localconfig/atg/sitemap/SitemapRepository.properties
    /localconfig/atg/dynamo/service/jdbc/SQLRepository.properties
    /localconfig/atg/dynamo/security/AdminSqlRepository.properties
    /localconfig/atg/userprofiling/PersonalizationRepository.properties

    Add the following to the properties files:

    idGenerator=/atg/dynamo/service/IdGenerator_agent
    lockManager=/atg/dynamo/service/ClientLockManager_agent
    eventServer=/atg/dynamo/server/SQLRepositoryEventServer_agent

  5. Modify the following settings on the live indexing server property files:

    Edit the /localconfig/atg/search/routing/repository/
    SearchConfigurationRepository.properties
    file:

    dataSource=/atg/dynamo/service/jdbc/JTDataSource_production
    subscriberRepository=/atg/dynamo/service/jdbc/SQLRepository_production

    Edit the /localconfig/atg/search/service/
    SearchSQLRepository.properties
    file:

    componentPath=/atg/dynamo/service/jdbc/SQLRepository_production

    Edit the /localconfig/atg/search/service/
    SearchSQLRepositoryEventServer.properties
    file:

    componentPath=/atg/dynamo/server/SQLRepositoryEventServer_production

    Edit the /localconfig/atg/search/service/SearchIdGenerator.properties file:

    componentPath=/atg/dynamo/service/IdGenerator_production

    Edit the /localconfig/atg/search/service/
    SearchClientLockManager.properties
    file:

    componentPath=/atg/dynamo/service/ClientLockManager_production

  6. Disable the caching of external user items on the profile live indexing server. The profile adapter repository uses simple caching, which means that the live indexing server will not detect changes to the user. To ensure that all changes are detected, disable caching on the live indexing server by editing the /localconfig/atg/
    userprofiling/userProfile.xml
    file:

    <gsa-template>
    <item-descriptor name="user" cache-mode="disabled" />
    <item-descriptor name="contactInfo" cache-mode="disabled" />
    </gsa-template>

  7. Disable caching of order items on the order live indexing server. The order repository uses simple caching; as such the live indexing server will not detect changes to the order, particularly to the status change of the order. To ensure that that the live indexing server detects changes correctly, disable caching by defining the following in the /localconfig/atg/commerce/order/orderrepository.xml file. These modifications will disable caching for the order and user (and referenced items) so that when updated on the customer-facing server, the new values will be read on the live indexing server and the current value will be indexed.

    <gsa-template>
     <item-descriptor name="order" cache-mode="disabled" />
     <item-descriptor name="shippingGroup" cache-mode="disabled" />
     <item-descriptor name="hardgoodShippingGroup" cache-mode="disabled" />
     <item-descriptor name="electronicShippingGroup" cache-mode="disabled" />
     <item-descriptor name="paymentGroup" cache-mode="disabled" />
     <item-descriptor name="creditCard" cache-mode="disabled" />
     <item-descriptor name="giftCertificate" cache-mode="disabled" />
     <item-descriptor name="storeCredit" cache-mode="disabled" />
     <item-descriptor name="paymentStatus" cache-mode="disabled" />
     <item-descriptor name="creditCardStatus" cache-mode="disabled" />
     <item-descriptor name="giftCertificateStatus" cache-mode="disabled" />
     <item-descriptor name="storeCreditStatus" cache-mode="disabled" />
     <item-descriptor name="commerceItem" cache-mode="disabled" />
     <item-descriptor name="configurableCommerceItem" cache-mode="disabled" />
     <item-descriptor name="subSkuCommerceItem" cache-mode="disabled" />
     <item-descriptor name="handlingInstruction" cache-mode="disabled" />
     <item-descriptor name="giftlistHandlingInstruction"
       cache-mode="disabled" />
     <item-descriptor name="relationship" cache-mode="disabled" />
     <item-descriptor name="shipItemRel" cache-mode="disabled" />
     <item-descriptor name="payShipRel" cache-mode="disabled" />
     <item-descriptor name="payOrderRel" cache-mode="disabled" />
     <item-descriptor name="amountInfo" cache-mode="disabled" />
     <item-descriptor name="orderPriceInfo" cache-mode="disabled" />
     <item-descriptor name="itemPriceInfo" cache-mode="disabled" />
     <item-descriptor name="taxPriceInfo" cache-mode="disabled" />
     <item-descriptor name="shippingPriceInfo" cache-mode="disabled" />
     <item-descriptor name="detailedItemPriceInfo" cache-mode="disabled" />
     <item-descriptor name="pricingAdjustment" cache-mode="disabled" />
     <item-descriptor name="marker" cache-mode="disabled" />
     <item-descriptor name="commerceItemMarker" cache-mode="disabled" />
     <item-descriptor name="manualPricingAdjustment" cache-mode="disabled" />
     <item-descriptor name="OrderFixedAmountAdjustment"
       cache-mode="disabled" />
     <item-descriptor name="scheduledOrderError" cache-mode="disabled" />
    </gsa-template>

  8. You must configure the processing of live indexing requests. Set the following properties in the /localconfig directory of the CSC and the agent servers:

    /atg/userprofiling/search/ProfileOutputConfig
    incrementalUpdateSeconds=-1

    /atg/userprofiling/search/OrderOutputConfig
    incrementalUpdateSeconds=-1

    Set the following properties in the /localconfig directory of the management server:

    /atg/userprofiling/search/ProfileOutputConfig
    incrementalUpdateSeconds=5

    /atg/userprofiling/search/OrderOutputConfig
    incrementalUpdateSeconds=5

    By setting incrementalUpdateSeconds to a positive value, you enable incremental indexing of profiles or orders on the management server. The value you enter is the frequency to check for profiles or orders to index. The value you set depends on how often you need the profile or order indexed.

  9. Set the following /localconfig/atg/search/routing/
    LaunchingService
    values on your indexing and agent-facing servers. The deployment share directory is a single shared directory where master copies of indexes are stored. For additional information, refer to the Installing ATG Search chapter of the
    ATG Search Installation and Configuration Guide:

    deployShare=drive:/yourSharedDirectory/yourDeployShareMainDirectory
    engineDir=drive:/path to Search Engine

    For example:

    deployShare=C:\ATG\DeployShareMain
    engineDir=C:\ATG9\Search9.3\SearchEngine

  10. To create a full index, the indexing engine requires a clean partition. The clean partition is a file from which all indexes are created. As such, you need to identify the location of the clean partition by creating a /localconfig/atg/search/routing/
    RoutingSystemService.properties
    file. Use the cleanPhysicalPartitionPath property to identify the full path to the clean partition.

    There is a copy of the clean partition located at <Searchdir>/SearchEngine/
    operatingsystem/data/initial.index. To resolve the path correctly, use a relative path to identify the clean partition location as a local copy. For example:

    cleanPhysicalPartitionPath =../data/initial.index

    For additional information, refer to the Configuring Remote Indexing Engines section in the ATG Search Installation and Configuration Guide.

 
loading table of contents...