Changing Index Configuration Parameters
- Last Updated: May 29, 2026
- 2 minute read
- Semaphore
- Documentation
When running SES in SOLR mode, the index configurations are stored in Zookeeper rather than on the file system within the index structure. This makes it harder to change the configuration for a particular index. Occasionally this is required if the standard configuration is not what is required for a particular index. For example the number of results returned for a particular request type may need updating for a particular purpose.
The sledgehammer technique to handle this is to stop SES, delete all indexes and configuration (the configurations are stored in the Zookeeper data area - <<SES Installation>>/solr/server/solr/zoo_data - delete this with the SES service stopped to delete all configurations), then restart SES. Update the either the resources/DefaultSolrIndex (for the default SOLR writer) or resources/JsonFieldIndex (for the One Field SOLR writer). Update the conf/solrconfig.xml file to make the change that you want, then republish your model. The new configuration will then be used.
However, it is possible to update an in situ index configuration.
When a SES index is created from within Publisher it will use a standard configuration for that index. When the index is first created (when the model is first published to SES) the list of configurations is retrieved. For this new index, Publisher will attempt to use a configuration determined by the version of Semaphore in use and the class of SOLR writer being used. If such a configuration has been uploaded to Zookeeper (i.e. another index has been created with this version of Semaphore and the same SOLR writer) then this will be used for the new indexes. (When Publisher is writing to the SOLR index, two indexes are used for each model: one in the foreground serving incoming requests, one in the background being written to. When Publisher has finished writing to the SOLR index, it switches an the alias for this instance between the two instances.)
To update an index configuration we use the supplied Zookeeper client application.
1) Create a new index configuration on the file system by copying the appropriate supplied default configuration and setting the parameters as required.
2) Upload this configuration for the index using the command
"<<SES Installation>>\solr\server\scripts\cloud-scripts\zkcli.bat" -cmd upconfig -zkhost <<Zookeeper address>> -collection <<Index Name>> -confname <<Configuration name>> -solrhome <<SOLR Home directory>> -confdir <<Location of index configuration>>
e.g
"C:\Program Files\Smartlogic\SES\solr\server\scripts\cloud-scripts\zkcli.bat" -cmd upconfig -zkhost 127.0.0.1:9983 -collection myExampleOne -confname SolrWriter-4.3.0 -solrhome "C:\Program Files\Smartlogic\SES\solr" -confdir "C:\example\UpdatedSolrIndex\conf"
and
"C:\Program Files\Smartlogic\SES\solr\server\scripts\cloud-scripts\zkcli.bat" -cmd upconfig -zkhost 127.0.0.1:9983 -collection myExampleTwo -confname SolrWriter-4.3.0 -solrhome "C:\Program Files\Smartlogic\SES\solr" -confdir "C:\example\UpdatedSolrIndex\conf"
Note by default the index names are <<Knowledge Model Management Model Name>>One and <<Knowledge Model Management Model Name>>Two - however, these values could have been overwritten in the Publisher configuration file.
The configuration names can be determined from the SOLR Administration interface. The configuration name will be shown when viewing the collection on the “Collections” panel.
Note all indexes that use this configuration will need to be republished after the configuration change)