Broadleaf Microservices
  • v1.0.0-latest-prod

Search & Index Services Configuration Properties

Search & Index Translations

Configuration properties for controlling how translations are handled during search and indexing flows.

Name Description Default

broadleaf.search.common.translation.index-country-specific-language-dialects

Whether to index language dialects identified by country and language, or just the language.

By default, only the language will be used when building translations for indexing and searching.

broadleaf.search.common.translation.index-languages-for-tenant-default-locale

Whether or not to index the translations for the tenant’s default locale.

By default, the default tenant locale translations will not be indexed as they will be available on the standard fields, e.g. fields_s.

Broadleaf Solr

General configuration properties for Solr.

Name Description Default

broadleaf.search.solr.server.suppress-solr-client-connection

Whether or not the solr client automatic connection at startup should be suppressed.

Default is false

broadleaf.search.solr.server.host

The host URL to connect to the Solr Server.

Default is localhost:9983, ignored if embedded is true.

broadleaf.search.solr.server.chroot

The Zookeeper chroot, which represents the root path to the Zookeeper virtual file system for SolrCloud configuration.

broadleaf.search.solr.server.user-name

Optional user name to use for Basic Authentication with Solr.

broadleaf.search.solr.server.password

Optional password to use for Basic Authentication along with the userName field for Solr

(since 2.0.2, 2.1.0) broadleaf.search.solr.server.client-session-timeout-millis

If using SolrCloud, this should be the value of the ZooKeeper client session timeout setting ('zkClientTimeout') in milliseconds. Note that the ZK server may not honor this value if it exceeds the server-side configured maximum ('maxSessionTimeout').

30000 (30 seconds)

broadleaf.search.solr.index.method

Default HTTP method used for submit updates to Solr.

Default is SolrRequest.METHOD.POST.

broadleaf.search.solr.index.max-retries

Max number of times to retry if an error occurs in indexing

Default is 3.

broadleaf.search.solr.index.pause-time

Amount of time to pause if a retry occurs due to an exception.

Default is 1000.

broadleaf.search.solr.index.commit-within-time

Amount of time to commit within.

Default is 5000.

broadleaf.search.solr.index.delete-collection-pause-time-millis

Amount of milliseconds to pause after deleting of the Solr collections.

Default is 3000, minimum is 1000.

broadleaf.search.solr.query.method

Default method for making query requests to Solr.

Default is SolrRequest.METHOD.POST.

broadleaf.search.solr.conf.default-config

The default configuration to use when creating collections.

Default is broadleaf.

broadleaf.search.solr.conf.default-shards

The default number of shards to use when creating collections.

Default is 1.

broadleaf.search.solr.zkAcl.enabled

Whether ZooKeeper Access Control List security credentials should be provided to connect to a Solr Cloud instance in ZooKeeper. See Solr’s zookeeper access control guide for more information.

Default is false.

broadleaf.search.solr.zkAcl.username

The username to be used with the default ZooKeeper credentials provider.

Required if ZK ACL is enabled.

broadleaf.search.solr.zkAcl.password

The password to be used with the default ZooKeeper credentials provider.

Required if ZK ACL is enabled.

broadleaf.search.solr.index.worker.chunkSize

The chunk size that specifies the maximum number of documents to include in Solr update request

Default is 20

Collections

Configuration properties for the indexed collections: catalog, customer, order, order fulfillment.

Name Description Default

broadleaf.indexer.catalog.batch-size

The size of each batch to read for queue loading.

Default is 100, minimum is 1.

broadleaf.indexer.catalog.chunk-size

The size of each chunk to be put on the queue.

Default is 100, minimum is 1.

broadleaf.indexer.catalog.service.web-client-buffer-limit-in-bytes

The WebClient’s buffer limit which should represent how much memory is required to gather a batch of indexables.

Default is 10 * 1024 * 1024, or 10485760.

broadleaf.indexer.customer.batch-size

The size of each batch to read for queue loading.

Default is 100, minimum is 1.

broadleaf.indexer.customer.chunk-size

The size of each chunk to be put on the queue.

Default is 100, minimum is 1.

broadleaf.indexer.customer.service.web-client-buffer-limit-in-bytes

The WebClient’s buffer limit which should represent how much memory is required to gather a batch of indexables.

Default is 10 * 1024 * 1024, or 10485760.

broadleaf.indexer.order.batch-size

The size of each batch to read for queue loading.

Default is 100, minimum is 1.

broadleaf.indexer.order.chunk-size

The size of each chunk to be put on the queue.

Default is 100, minimum is 1.

broadleaf.indexer.order.service.web-client-buffer-limit-in-bytes

The WebClient’s buffer limit which should represent how much memory is required to gather a batch of indexables.

Default is 10 * 1024 * 1024, or 10485760.

broadleaf.indexer.orderfulfillment.batch-size

The size of each batch to read for queue loading.

Default is 100, minimum is 1.

broadleaf.indexer.orderfulfillment.chunk-size

The size of each chunk to be put on the queue.

Default is 100, minimum is 1.

broadleaf.indexer.orderfulfillment.service.web-client-buffer-limit-in-bytes

The WebClient’s buffer limit which should represent how much memory is required to gather a batch of indexables.

Default is 10 * 1024 * 1024, or 10485760.

Search & Index cache

Properties that influence cache settings for the indexer & search services.

Name Description Default

broadleaf.index.cache.fields-by-indexable-type

TTL when caching fields by their indexable types

Default is 30 minutes.

broadleaf.index.cache.locales-by-tenant-id

TTL when caching locales by the tenant ID

Default is 30 minutes.

broadleaf.search.cache.by-indexable-type

TTL when caching fields by indexable type

Default is 5 minutes.

broadleaf.search.cache.by-search-request

TTL when caching redirects by search request

Default is 5 minutes.

broadleaf.search.cache.pattern-cache-size

Size of the LRUMap cache to use to store Pattern instances for SearchRedirect regex.

Default is 500.

Stopword, Synonym, Spellcheck

Configuration properties for stopwords, synonyms, and spellcheck.

Name Description Default

broadleaf.search.load-stopword.config.aliases

The aliases to target when loading stopwords

broadleaf.search.load-stopword.config.stopword-file

The stopword file path

broadleaf.search.load-stopword.config.language

The target language (english, spanish, french, arabic, etc.)

broadleaf.search.load-synonym.config.aliases

The aliases to target when loading synonyms

broadleaf.search.load-synonym.config.synonym-file

The synonym file path

broadleaf.search.load-synonym.config.language

The target language (english, spanish, french, arabic, etc.)

broadleaf.search.spell-check.spell-check-enabled

Enables/disables spellcheck. If this is set to false, all other spell check properties are ignored.

Default is true.

broadleaf.search.spell-check.spell-check-query

If true, returns a spellcheck corrected query in a search response.

Default is true.

broadleaf.search.spell-check.auto-correct-query

Enables/disables auto-correction of queries.

Default is false.

broadleaf.search.spell-check.suggestion-count

The number of spelling suggestions to return in a search response.

Default is 1.

broadleaf.search.spell-check.show-suggestion-query-hit-count

If true, returns number of hits for suggested queries.

Default is false.

broadleaf.search.spell-check.suggestion-query-collation-tries

Approximately the number of suggestion queries to return the number of hits for.

Default is 1.

Solr Boost

Name Description Default

broadleaf.search.solr.boost.word-boost

Boost which should be applied on word query type matches.

broadleaf.search.solr.boost.phrase-boost

Boost which should be applied on phrase query type matches.

broadleaf.search.solr.boost.phrase-slop

Slop which should be applied on phrase query type matches.

Default is 2.

broadleaf.search.solr.boost.phrase-exact-boost

Boost which should be applied on exact phrase query type matches.

Catalog Access Policies

These properties are prefixed with broadleaf.search.common.catalog-access-policy

  • request-attribute-list: Represents the list of attribute from a WebRequest to store on a CatalogAccessPolicyContext for match rules to be evaluated against.

    • The attribute name should be matched by a field name configured in metadata for the matchRule rule-builder in the admin to correctly target them.

  • additional-claims: Represents a list of additional auth token claims to add as attributes to the CatalogAccessPolicyContext for match rules to be evaluated against.

    • The claim name should be matched by a field name configured in metadata for the matchRule rule-builder.

  • whitelisted-service-callers: The names of external microservices that are expected to call Catalog Service for admin or bulk processing requests and should be whitelisted so that they bypass Catalog Access Policy filtering.

    • When another service calls Catalog, the original user’s (e.g., admin user’s) auth token is replaced by the calling service’s, so any information about them must be provided in the request rather than in the auth.

    • Default is ["bulkopsclient"]