Skip to content

Commit ac3d6d5

Browse files
authored
SOLR-17868: Introduce a single page in Ref Guide to list all system properties (#3613)
1 parent bd767e3 commit ac3d6d5

File tree

2 files changed

+121
-0
lines changed

2 files changed

+121
-0
lines changed

solr/solr-ref-guide/modules/configuration-guide/config-nav.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
* xref:property-substitution.adoc[]
2222
* xref:core-discovery.adoc[]
2323
* xref:configuring-solr-xml.adoc[]
24+
* xref:solr-properties.adoc[]
2425
2526
* xref:configuring-solrconfig-xml.adoc[]
2627
** xref:index-location-format.adoc[]
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
= Solr Properties Reference
2+
// Licensed to the Apache Software Foundation (ASF) under one
3+
// or more contributor license agreements. See the NOTICE file
4+
// distributed with this work for additional information
5+
// regarding copyright ownership. The ASF licenses this file
6+
// to you under the Apache License, Version 2.0 (the
7+
// "License"); you may not use this file except in compliance
8+
// with the License. You may obtain a copy of the License at
9+
//
10+
// http://www.apache.org/licenses/LICENSE-2.0
11+
//
12+
// Unless required by applicable law or agreed to in writing,
13+
// software distributed under the License is distributed on an
14+
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
// KIND, either express or implied. See the License for the
16+
// specific language governing permissions and limitations
17+
// under the License.
18+
19+
This page provides an alphabetical reference of Solr system properties that can be used to configure various aspects of Solr. Where applicable, previous property names are also listed.
20+
21+
NOTE: Properties marked with "!" indicate inverted meaning between old and new properties. For example, if the old property was `disable.config.edit=false`, the equivalent setting with the new property would be `solr.api.config.edit.enabled=true`.
22+
23+
== System Properties
24+
25+
[width="100%",options="header",cols="20,25,15,40"]
26+
|===
27+
|Property Name|Previous Property Name (if any)|Default Value|Description
28+
29+
|solr.admin.handler.systeminfo.dns.reverse.lookup.enabled|!solr.dns.prevent.reverse.lookup|true|Controls whether reverse DNS lookups are enabled in the system info handler.
30+
31+
|solr.api.config.edit.enabled|!disable.config.edit|true|Controls whether configuration editing via API is enabled. When set to `true`, configuration editing is enabled.
32+
33+
|solr.api.v2.enabled|!disable.v2.api|true|Controls whether the V2 API is enabled. When set to `true`, the V2 API is enabled.
34+
35+
|solr.auth.jwt.outbound.http.enabled|solr.auth.jwt.allowOutboundHttp|false|Controls whether JWT authentication for outbound HTTP connections is enabled.
36+
37+
|solr.auth.superuser|solr.authorization.superuser|solr|Specifies the superuser for authorization. This user has all permissions when using SASL authentication.
38+
39+
|solr.circuitbreaker.errorcode||503|Defines the HTTP error code returned when a circuit breaker is triggered.
40+
41+
|solr.cloud.prep.recovery.read.timeout.additional.ms|prepRecoveryReadTimeoutExtraWait|8000|Specifies additional milliseconds to wait during recovery read operations in SolrCloud mode.
42+
43+
|solr.cloud.startup.delete.unknown.cores.enabled|solr.deleteUnknownCores|false|Controls whether unknown cores are deleted at startup in SolrCloud mode.
44+
45+
|solr.cloud.wait.for.zk.seconds|waitForZk|30|Specifies the number of seconds to wait for ZooKeeper connection in SolrCloud mode.
46+
47+
|solr.configset.bootstrap.confdir|bootstrap_confdir||Defines the directory of a configuration to be loaded as a configset when starting Solr. Often ends in `/conf`.
48+
49+
|solr.configset.bootstrap.config.name|collection.configName||Specifies the configuration name for the bootstrapped configset. Use with "solr.configset.bootstrap.confdir".
50+
51+
|solr.configset.default.confdir|solr.default.confdir|"_default"|Defines the default configuration directory for configsets.
52+
53+
|solr.configset.forbidden.file.types|solrConfigSetForbiddenFileTypes|jar,jnilib,dll,so,dylib,exe|Specifies file types that are forbidden in configsets.
54+
55+
|solr.configset.upload.enabled|configset.upload.enabled|true|Controls whether configset uploads are enabled.
56+
57+
|solr.filestore.filesize.max|max.file.store.size|100MB|Defines the maximum file size allowed in Solr's filestore.
58+
59+
|solr.index.replication.fingerprint.enabled|!solr.disableFingerprint|true|Controls whether index fingerprinting for replication is disabled.
60+
61+
|solr.index.updatelog.enabled|enable.update.log|true (in default solrconfig.xml)|Controls whether the UpdateLog is enabled. The UpdateLog is required for atomic updates, real-time get, and transaction log replay.
62+
63+
|solr.logs.dir|solr.log.dir|server/logs|Specifies the directory where Solr logs are stored.
64+
65+
|solr.metrics.fieldcache.entries.enabled|!disableSolrFieldCacheMBeanEntryList|true|Controls whether Solr FieldCache MBean entry list is disabled for metrics reporting.
66+
67+
|solr.metrics.fieldcache.entries.jmx.enabled|!disableSolrFieldCacheMBeanEntryListJmx|true|Controls whether Solr FieldCache MBean JMX entry list is disabled for metrics reporting.
68+
69+
|solr.packages.enabled|enable.packages|false|Controls whether the package management system is enabled.
70+
71+
|solr.requests.allow.urls|solr.disable.allowUrls||Specifies URLs that are allowed for streaming. See also solr.requests.streaming.remote.enabled.
72+
73+
|solr.requests.streaming.body.enabled|solr.enableStreamBody|false|Controls whether streaming request bodies are enabled.
74+
75+
|solr.requests.streaming.remote.enabled|solr.enableRemoteStreaming|false|Controls whether remote streaming is enabled for requests.
76+
77+
|solr.resourceloading.restricted.enabled|!solr.allow.unsafe.resourceloading|true|Controls whether resource loading restrictions are enabled. When set to `true`, resource loading restrictions are enabled.
78+
79+
|solr.responses.hidden.sys.props|solr.hiddenSysProps||Defines system properties that are hidden in responses.
80+
81+
|solr.responses.stacktrace.enabled|!solr.hideStackTrace|false|Controls whether stack traces are included in responses. When set to `true`, stack traces are included in responses.
82+
83+
|solr.security.auth.basicauth.credentials|basicauth||Defines basic authentication credentials.
84+
85+
|solr.security.auth.plugin|authenticationPlugin||Specifies the authentication plugin to use.
86+
87+
|solr.solrj.cloud.max.stale.retries|cloudSolrClientMaxStaleRetries|5|Sets the maximum number of retries for stale connection attempts in SolrJ cloud client.
88+
89+
|solr.streamingexpressions.facet.tiered.enabled|solr.facet.stream.tiered|true|Controls whether tiered faceting is enabled for streaming expressions.
90+
91+
|solr.tracing.always.on.enabled|solr.alwaysOnTraceId|true|Controls whether trace IDs are always generated, even when no request contains a trace ID.
92+
93+
|solr.ui.enabled|!disableAdminUI|true|Controls whether the Solr Admin UI is enabled. When set to `true`, the Solr Admin UI is enabled.
94+
95+
|solr.ui.experimental.enabled|!solr.admin.ui.experimental.disabled|true|Controls whether experimental features in the Solr Admin UI are enabled. When set to `true`, experimental features in the UI are enabled.
96+
97+
|solr.zookeeper.chroot.create|createZkChroot|false|Controls whether a ZooKeeper chroot is created if it doesn't exist.
98+
|===
99+
100+
== Property Naming Conventions
101+
102+
Many Solr properties follow a standard naming convention. Newer properties typically use dot-separated format prefixed with `solr.` (e.g., `solr.my.property`), while older properties might camelCase (e.g., `solr.myProperty`).
103+
104+
== Setting System Properties
105+
106+
System properties can be set in several ways:
107+
108+
1. JVM command line arguments using `-D`: `-Dsolr.api.v2.enabled=true`
109+
2. In `solr.in.sh` (Unix) or `solr.in.cmd` (Windows) using environment variables
110+
3. Through environment variables (with appropriate naming conventions)
111+
112+
Environment variables can also be used to set these properties.
113+
You may find this useful in environments such as Docker.
114+
Environment variables should be uppercase with dot notations equivalents, e.g. `SOLR_API_V2_ENABLED` for the property `solr.api.v2.enabled`.
115+
116+
== See Also
117+
118+
* xref:configuring-solr-xml.adoc[]
119+
* xref:configuring-solrconfig-xml.adoc[]
120+
* xref:property-substitution.adoc[]

0 commit comments

Comments
 (0)