New KOBI documentation is available: https://adeo-ccdp.gitbook.io/kobi/

Configuration

Couchbase bucket

Shaper use a Couchbase bucket to store and retrieve designed page, models and configured fragments, you must configure this bucket (values configured below are the default values if you do not set properties).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
shaper.couchbase:
   cluster:
      hosts:                           # comma separated list of couchbase host
      bucket:                          # Name of the couchbase bucket used for shaper
      username:                        # Username for the bucket
      password:                        # Password for the bucket
   environment:
      max-request-lifetime: 75000      # Sets the maximum time (in milliseconds) a request is allowed to live
      connect-timeout: 5000            # Connect timeout
      query-timeout: 5000              # Query timeout
      view-timeout: 5000               # View timeout
      search-timeout: 5000             # Search timeout
   query:
        scan-consistency: REQUEST_PLUS # Please do not modify. Consistency between index and data (NOT_BOUNDED, REQUEST_PLUS, STATEMENT_PLUS, see https://docs.couchbase.com/server/current/indexes/performance-consistency.html
   caches:
      objects:
         max-memory-size: 10485760     # Max memory size (in bytes) for document by key cache (exclusive with max-entry-size)
         max-entry-size:               # Max entry size for document by key cache (exclusive with max-memory-size)
         ttl: 86400                    # Time To Live (in seconds) for document by key cache
      views:
         max-memory-size: 1048576      # Max memory size (in bytes) for key by view cache (exclusive with max-entry-size)
         max-entry-size:               # Max entry size for key by view cache (exclusive with max-memorysize)
         ttl: 86400                    # Time To Live (in seconds) for key by veiw cache
      searches:
         max-memory-size: 1048576      # Max memory size (in bytes) for key by search cache (exclusive with max-entry-size)
         max-entry-size:               # Max entry size for key by search cache (exclusive with max-memory-size)
         ttl: 86400                    # Time To Live (in seconds) for key by search cache
 "shaper.couchbase.fts": {
   "enabled": "true",
   "indexes": [
     {
       "bucket": "${shaper.couchbase.cluster.bucket}",
       "name": "idx_fts_page_model_search",
       "template": "fts/ftsIndexTemplate.json"
     }
   ]
 }

The template input is the location of a json in the classpath which is the definition of the index required to create it.
At startup if no index with this name exists it will be created.
This means that if an update is needed, you should upgrade the index name in both the configuration (idx_v2_fts…) and keep it in sync in ShaperDao. When the upgrade is done and the old index is not used anymore you should delete manually the old index.

The name is composed of the property “name” in this config, the bucket name and the analyzer language (defined by site configuration) and must be synchronized with ShaperDao static property (the config is an array so search need to target a specific index).

This particular full text search focuses on page and page models. There are multiple fields indexed : name (with language analyzer), site id (keyword analyzer), resourceType/Scope/Id with the standard analyzer (term search).

The search is exposed on designer via designer-api using shaper-core lib.

What's on this Page