Search Properties

jmix.search.changed-entities-indexing-enabled

Defines whether automatic indexing of changed entities is enabled.

Default value: true

jmix.search.default-search-strategy

Name of default search strategy.

Default value: anyTermAnyField

jmix.search.enqueue-index-all-on-startup-index-recreation-enabled

Defines whether all entity instances related to indexes created or recreated on startup should be enqueued automatically. See also Existing Data Indexing.

Default value: true

jmix.search.enqueue-index-all-on-startup-index-recreation-entities

Defines the list of entities that should be automatically enqueued on startup in case of index recreation. Empty list means all indexed entities. See also Existing Data Indexing.

Default value: none

jmix.search.enqueueing-session-processing-cron

Cron expression that is used by default Enqueueing Session processing Quartz scheduling configuration.

Default value: 0/5 * * * * ?

jmix.search.indexing-queue-processing-cron

Cron expression that is used by default Indexing Queue processing Quartz scheduling configuration.

Default value: 0/5 * * * * ?

jmix.search.index-schema-management-strategy

The way of index schema synchronization. See Index Creation for more detail.

Default value: create-or-recreate

jmix.search.max-prefix-length

Defines the maximum length for generated prefix terms used in "starts with" search.

The edge N-gram analyzer creates prefixes from min-prefix-length to this maximum value for each indexed word. Longer maximum values:

  • Improve search accuracy for longer prefixes.

  • Increase index size due to more stored prefixes.

  • Reduce performance of wildcard fallback queries.

Default value: 8.

jmix.search.max-search-page-count

Sets the max amount of result pages.

Default value: 100

jmix.search.min-prefix-length

Defines the minimum length for generated prefix terms used in "starts with" search.

The edge N-gram analyzer only creates prefixes starting from this length. Shorter minimum values:

  • Enable matching of very short search terms.

  • Significantly increase index size (more prefixes generated).

  • May impact performance due to numerous small prefixes.

Default value: 3

jmix.search.process-queue-batch-size

Sets the amount of queue items processed in single batch.

Default value: 100

jmix.search.reindex-entity-enqueue-batch-size

Sets the amount of entity instances enqueued in single batch during entity reindex process.

Default value: 100

jmix.search.search-index-name-prefix

Prefix for search index name. Index naming template: <prefix><entity_name>. See Configure Index Naming.

Default value: search_index_

jmix.search.search-reload-entities-batch-size

Defines the batch size for post-search entity processing, for example, when results are filtered after search due to the row-level security policies, or when entities are fetched from search results with their fetch plans. See Access Control and Pagination.

Default value: 100

jmix.search.search-result-page-size

Sets the max amount of objects displayed on single page of search result.

Default value: 100

jmix.search.use-default-enqueueing-session-processing-quartz-configuration

Defines whether the default Enqueueing Session processing Quartz scheduling configuration is used.

Default value: true

jmix.search.use-default-indexing-queue-processing-quartz-configuration

Defines whether the default Indexing Queue processing Quartz scheduling configuration is used.

Default value: true

jmix.search.server.url

Defines URL of the Elasticsearch/OpenSearch service

Default value: localhost:9200

jmix.search.server.login

Defines login for basic authentication.

Default value: none

jmix.search.server.password

Defines password for basic authentication.

Default value: none

jmix.search.server.bulk-request-refresh-policy

Defines refresh policy that should be used with bulk requests to search service.

Refresh makes recent changes available for searching.

  • false - bulk request will not cause refresh. Changes made by this request will be visible after refresh is performed via another causes - explicit refresh operation or periodical refresh (by default - every second). Recommended policy. Use other policies only if you must have the changes made by a request visible synchronously with the request.

  • true - refresh will be performed immediately after request execution. This mode should be used only after careful verification because it can lead to performance issues.

  • wait_for - request will not cause refresh but will wait for it to be performed via another cause. Response will be sent back after refresh is done.

Default value: false

jmix.search.server.ssl.certificate-location

Defines location of certificate for connection to search service (if required).

Location is handled according to the rules of io.jmix.core.Resources.

Default value: none

jmix.search.server.ssl.certificate-alias

Defines alias what will be used to store certificate to the Key Store.

Default value: es_client_ca

jmix.search.server.ssl.certificate-factory-type

Defines type of certificate factory.

Default value: X.509

jmix.search.server.ssl.key-store-type

Defines type of key store.

Default value: pkcs12

jmix.search.wildcard-prefix-query-enabled

Enables wildcard query fallback when the search term length exceeds jmix.search.max-prefix-length.

When true, performs wildcard query for terms longer than max prefix length; when false, returns no results for such terms.

Terms shorter than jmix.search.min-prefix-length always return empty results regardless of this setting.

Default value: true