"indexProviders" : { "local" : { "classname" : "local" "directory" : "target/indexes" } }
This index provider implementation stores indexes on the local file system via MapDB.
The local index provider is currently limited to single-column indexes. Also, indexes will not be used for LIKE or CONTAINS criteria. For multi-value properties, this provider will only store & use the first value.
Also, the local index provider does not support TEXT indexes.
To configure the local index provider in embedded (JSON) mode you need to add the following section:
"indexProviders" : { "local" : { "classname" : "local" "directory" : "target/indexes" } }
Depending on your use case, you can also fine tune MapDB using an advanced configuration:
"indexProviders" : { "local" : { "classname" : "local", "directory" : "target/indexes", "cacheLRUEnable" : true, "mmapFileEnable" : true, "commitFileSyncDisable" : true, "transactionDisable" : true, "asyncWrite" : true, "cacheSize" : 100 } }
<index-providers> <index-provider name="local" classname="local" path="modeshape/artifacts/indexes/" relative-to="jboss.server.data.dir" /> </index-providers>
or
<index-provider name="local_custom_settings" classname="local" path="modeshape/artifacts/indexes_local_custom/" relative-to="jboss.server.data.dir" cacheLRUEnable="true" mmapFileEnable="true" commitFileSyncDisable="true" transactionDisable="true"asyncWrite="true" cacheSize="100"/>