Configuring System Properties
Linux
To configure System Properties in Linux installations:
- Edit the
<installation-directory>/bin/setenv.sh
file. - Find the section CATALINA_OPTS=
(this is JAVA_OPTS= in Confluence 5.5 and earlier) - Refer to the list of parameters in Recognized system properties.
Add all parameters in a space-separated list, inside the quotations.
Windows (starting from .bat file)
To Configure System Properties in Windows Installations When Starting from the .bat File:
- Edit the
<installation-directory>/bin/setenv.bat
file. - Find the section set CATALINA_OPTS=%CATALINA_OPTS%
(this is JAVA_OPTS=%JAVA_OPTS% in Confluence 5.5 and earlier) - Refer to the list of parameters in Recognized system properties.
Add all parameters in a space-separated list. Make sure to keep the string %CATALINA_OPTS% in place.
Windows service
There are two ways to configure system properties when you Start Confluence Automatically on Windows as a Service, either via command line or in the Windows Registry
Setting properties for Windows services via command line
To set properties for Windows services via a command line:
- Identify the name of the service that Confluence is installed as in Windows (Go to Control Panel > Administrative Tools > Services):
In the above example, the service name is Confluence121213135538. - Open the command window (Choose Start > cmd.exe)
cd
to thebin
directory of your Confluence instance and run the following command:tomcat8w //ES//<SERVICENAME>
In the above example, it would be
tomcat8w //ES//Confluence121213135538
The Tomcat version number may be different if you are using an earlier version of Confluence.- Click on the
Java
tab to see the list of current start-up options: - Append any new option on its own new line by adding to the end of the existing Java Options. Refer to the list of parameters in Recognized system properties.
Setting properties for Windows services via the Windows registry
In some versions of Windows, there is no option to add Java variables to the service. In these cases, you must add the properties by viewing the option list in the registry.
- Go to the Registry Editor (Start > regedit.exe).
- Find the Services entry:
64bit:HKEY_LOCAL_MACHINE >> SOFTWARE >> WOW6432Node >> Apache Software Foundation >> Procrun 2.0 >> Confluence service name
32bit:HKEY_LOCAL_MACHINE >> SOFTWARE >> Apache Software Foundation >> Procrun 2.0 >> Confluence service name
- To change existing properties double-click the appropriate value.
- To change additional properties, double-click options.
- Refer to the list of parameters in Recognized system properties. Enter each on a separate line.
Confluence Data Center deployed in AWS
If you've used the Quick Start or CloudFormation template to deploy Confluence Data Center in AWS, you will pass system properties via the Cloud Formation Template, and not using the methods described above.
- In the AWS Console, choose Update Stack
Under Advanced, enter system properties in the Catalina Properties field as follows:
-Xms1024m -Xmx1024m -Dsystemproperty=value
- Changes are applied when a new nodes are provisioned.
Verifying your settings
To see what Confluence is using, check Viewing System Properties.
Recognized system properties
Since | Default Value | Module... | Effect |
---|---|---|---|
atlassian.forceSchemaUpdate | |||
1.0 |
| atlassian-config | By default, Confluence will only run its database schema update when it detects that it has been upgraded. This flag will force Confluence to perform the schema update on system startup. |
confluence.home | |||
1.0 | Any filesystem path | Confluence and atlassian-config | If this system property is set, Confluence will ignore the contents of the |
confluence.dev.mode | |||
1.0 |
| Confluence | Enables additional debugging options that may be of use to Confluence developers (additionally it changes spring bean creation to use lazy initialization by default to decrease startup time). Do not enable this flag on a production system. |
confluence.disable.mailpolling | |||
2.4 |
| Confluence | If set to "true", will prevent Confluence from retrieving mail for archiving within spaces. Manually triggering "check for new mail" via the web UI will still work. This property has no effect on outgoing mail |
confluence.i18n.reloadbundles | |||
1.0 |
| Confluence | Setting this property will cause Confluence to reload its i18n resource bundles every time an internationalized string is looked up. This can be useful when testing translations, but will make Confluence run insanely slowly. |
confluence.ignore.debug.logging | |||
1.0 |
| Confluence | Confluence will normally log a severe error message if it detects that DEBUG level logging is enabled (as DEBUG logging generally causes a significant degradation in system performance). Setting this property will suppress the error message. |
confluence.jmx.disabled | |||
3.0 |
| Confluence | If set to "true", will disable Confluence's JMX monitoring. This has the same effect as setting the "enabled" property to false in |
confluence.optimize.index.modulo | |||
2.2 |
| Confluence | Number of index queue flushes before the index is optimized. |
confluence.plugins.bundled.disable | |||
2.9 |
| Confluence | Starts confluence without bundled plugins. May be useful in a development environment to make Confluence start quicker, but since bundled plugins are necessary for some of Confluence's core functionality, this property should not be set on a production system. |
atlassian.indexing.contentbody.maxsize | |||
3.0 | 1048576 | atlassian | When a file is uploaded, its text is extracted and indexed. This allows people to search for the content of a file, not just the filename. If the amount of content extracted from the file exceeds the limit set by this property (default is 1MB, in bytes), the file's contents will still be indexed and searchable, but will not appear when the file is returned in search results. Increasing this limit may make displaying search results slower. See Configuring Attachment Size for more info. |
atlassian.mail.fetchdisabled | |||
3.5 |
| Confluence | Disables mail fetching services for IMAP and POP |
atlassian.mail.senddisabled | |||
3.5 |
| Confluence and atlassian-mail | Disables sending of mail |
atlassian.disable.caches | |||
2.4 |
| atlassian-plugins, atlassian-cache-servlet | Setting this property will disable conditional get and expires: headers on some web resources. This will significantly slow down the user experience, but is useful in devlopment if you are frequently changing static resources and don't want to continually flush your browser cache. |
confluence.html.encode.automatic | |||
2.9 | Confluence | Setting this property forces the antixss encoding on or off, overriding the behavior dictated by settings. The default behavior differs between Confluence versions. | |
org.osgi.framework.bootdelegation | |||
2.10 | empty | atlassian-plugins | Comma-separated list of package names to provide from application for OSGi plugins. Typically required when profiling Confluence. For example: "com.jprofiler.,com.yourkit.". |
confluence.diff.pool.size | |||
3.1 |
| Confluence | Maximum number of concurrent diffs. When that number is exceeded, additional attempts by RSS feeds to create diffs are ignored and logged. (The RSS requests succeed, they are just missing diffs). |
confluence.diff.timeout | |||
3.1 |
| Confluence | Number of milliseconds to wait for a diff operation (comparing two page versions) to complete before aborting with an error message. |
confluence.html.diff.timeout | |||
4.0 | 10000 | Confluence | Number of milliseconds to wait for a diff operation (comparing two page versions) to complete before aborting with an error message. |
atlassian.user.experimentalMapping | |||
2.10 |
| Confluence | Setting this property changes the relationship between local users and local groups to reduce performance degradation when adding a local user to a local group with a large number of users. Please note, setting this property can slow down other user management functions. We recommend that you set it only if you are experiencing performance problems when adding local users to large local groups. Please refer to CONF-12319, fixed in Confluence 3.1.1. |
confluence.import.use-experimental-importer | |||
3.2 |
| Confluence | Setting this property changes Confluence to use the Experimental XML Importer. It is designed to be a more stable implementation but, at the time of the release of 3.2, the importer is largely untested and thus not supported. |
atlassian.webresource.disable.minification | |||
3.3 |
| atlassian-plugins | Disables automatic minification of JavaScript and CSS resources served by Confluence. |
index.queue.thread.count | |||
3.3 | See "Effect" | Confluence | Sets the number of threads to be used for the reindex job. The value has to be in the range of 1 to 50 (inclusive), i.e. at least one thread but no more than 50 threads will be used. There is no default value, i.e.
Note: For Confluence versions from 3.3 to 5.6 the maximum threads is 10. |
index.queue.batch.size | |||
3.3 | 1500 | Confluence | Size of batches used by the indexer. Reducing this value will reduce the load that the indexer puts on the system, but indexing takes longer. Increasing this value will cause indexing to be completed faster, but puts a higher load on the system. Normally this setting does not need tuning. |
password.confirmation.disabled | |||
3.4 |
| Confluence | This property disables the password confirmation functionality that Confluence uses as an additional security measure. With this property set, Confluence will not require password confirmation for the following actions: administrative actions, change of email address and Captcha for failed logins. Disabling password confirmations is useful if you are using a custom authenticator. |
confluence.browser.language.enabled | |||
3.5 |
| Confluence | Setting this property to "false" disables the detection of browser language headers, effectively restoring Confluence behavior to that of earlier releases. Setting this property to "true" enables the detection of the language headers sent by the browser. Confluenc will change the UI language based on the browser headers. See documentation on how users can choose a language preference. |
upm.pac.disable | |||
Universal Plugin Manager 1.5 |
| Universal Plugin Manager (UPM) | When this property is set to true, then UPM will not try to access the The Atlassian Marketplace. This is useful for application servers that do not have access to the Internet. See the UPM documentation. |
confluence.reindex.documents.to.pop | |||
3.5.9 |
| Confluence | Indicates how many objects each indexing thread should process at a time during a full re-index. Please note that this number does not include attachments |
confluence.reindex.attachments.to.pop | |||
3.5.9 |
| Confluence | Indicates how many attachments each indexing thread should process at a time during a full re-index. |
confluence.upgrade.active.directory | |||
3.5.11 |
| Confluence | Forces Confluence to treat any LDAP directories it migrates as Active Directory, rather than relying on looking for sAMAccountName in the username attribute. This is necessary if you are upgrading from before Confluence 3.5, and need to use an attribute other than sAMAccountName to identify your users and are seeing |
confluence.context.batching.disable | |||
4.0 | false | Confluence | Disables batching for web resources in contexts (e.g. editor, main, admin). Useful for diagnosing the source of javascript or CSS errors. |
com.atlassian.logout.disable.session.invalidation | |||
4.0 |
| Confluence | Disables the session invalidation on log out. As of 4.0 the default behavior is to invalidate the JSession assigned to a client when they log out. If this is set to true the session is kept active (but the user logged out). This may be valuable when using external authentication systems, but should generally not be needed. |
officeconnector.spreadsheet.xlsxmaxsize | |||
4.0.5 | 2097152 | Office Connector | Indicates the maximum size in bytes of an Excel file that can be viewed using the viewxls macro. If empty, the maximum size defaults to 2Mb. See CONF-21043 for more details. |
com.atlassian.confluence.extra.calendar3.display.events.calendar.maxpercalendar | |||
200 | Team Calendars | Specifies the maximum number of events per calendar. This property is effective only if the Team Calendars plugin is installed on your Confluence site. | |
com.atlassian.confluence.allow.downgrade | |||
4.3.2, 5.0-OD-10 | false | Confluence | Allows Confluence to start up against the home directory of a newer version of Confluence. Note that running Confluence like that is unsupported. You should only turn this on if you know what you are doing. See After Downgrading, Confluence Will No Longer Run for details. |
confluence.skip.reindex | |||
false | When true, allows Confluence to skip rebuilding the search index when Confluence is upgraded. This can be useful if you have a very large site and wish to delay rebuilding the index until a time after the upgrade is complete. | ||
reindex.thread.count | |||
5.2 | Confluence | Sets the number of threads to be used for a one-off reindex job. The value has to be in the range of 1 to 50 (inclusive), i.e. at least one thread but no more than 50 threads will be used. There is no default value. This system property does not affect the incremental indexing that Confluence does. | |
reindex.attachments.thread.count | |||
5.2 | 4 | Confluence | Sets the number of threads to be used for reindexing attachments specifically, and allows you to reduce the concurrency for these more memory intensive index items. |
atlassian.confluence.export.word.max.embedded.images | |||
5.2 | 50 | This property limits the number of images that are included when you export a Confluence page to Word. When you export a page with many large images images to Word, all the images are loaded into memory, which can then cause out of memory errors affecting your entire Confluence site. You can temporarily increase this limit, using this system property, if you need to export a page with lots of images. | |
confluence.mbox.directory | |||
5.4.1 | Confluence | Setting this property defines the directory on your Confluence Server where mailboxes can be imported from (for use with the Confluence Mail Archiving add-on). Mailboxes are not able to be imported from any other location. We recommend administrators create a directory in the Confluence Home directory specifically for this purpose. Mail cannot be imported from the server until this system property is set. | |
confluence.search.max.results | |||
5.5 | 1000 | Confluence | Setting this property changes the maximum number of items Confluence Search will return. |
confluence.upgrade.recovery.file.enabled | |||
5.5 | true | Confluence | By default, Confluence creates an upgrade recovery file before and after an upgrade. The operation can take long time on large databases and can be safely turned off if there is a process to back up database and verify the backup before performing an upgrade. Setting this property to false will disable upgrade recovery file creation. |
confluence.junit.report.directory | |||
5.5 | Confluence | Setting this property defines the directory on your Confluence Server where JUnit Reports can be imported from (for use in the JUnit Report Macro). No other locations are permitted. We recommend administrators create a directory in the Confluence Home directory specifically for this purpose. JUnit Test result files cannot be imported from the server until this system property is set. | |
officeconnector.textextract.word.docxmaxsize | |||
5.5.3 | 16777216 | Confluence | When a file is uploaded, its text is extracted and indexed. This allows people to search for the content of a file, not just the filename. Confluence will only extract content from a Word document up to the limit set by this property (defaults to 16MB, in bytes), before proceeding to index it. This will mean that only part of file's contents are searchable. See Configuring Attachment Size for more info. |
cluster.login.rememberme.enabled | |||
5.6 | False | In a cluster, setting this property to This system property has no effect in standalone Confluence. | |
confluence.cluster.hazelcast.listenPort | |||
5.6 | 5801 | In a cluster, this property can be used to override the default port that Hazelcast will bind to, for example, if the port is unavailable, or you need to run more than one node on the same host (not recommended). It defaults to 5801. | |
confluence.document.conversion.threads | |||
5.7 | Confluence | The number of threads allocated to the file conversion service is calculated dynamically based on the amount of memory assigned to the instance and the number of CPU cores (usually 4 to 6 threads). This property can be used to change the number of threads. Decrease threads to resolve OOME issues, increase threads to resolve problems with documents spending too long in the queue. | |
confluence.document.conversion.threads.wait | |||
5.7 | 1000 | Confluence | Set this property to change the maximum number of items that can be queued for conversion. Any file conversion requests that are made when this maximum limit has been reached are aborted. |
confluence.cluster.node.name | |||
5.7 | Confluence | Set this property to give each node in your Data Center cluster a human readable name (displayed in email notifications and in the footer). If left unset, Confluence will assign a node identifier to each node. | |
confluence.document.conversion.fontpath | |||
5.8.7 | Confluence | Set this property to define a directory where you can add additional fonts to be used when rendering files (in previews and thumbnails). This is useful if you need to support previewing files with specific fonts, or fonts with multibtye characters (such as Japanese). | |
confluence.document.conversion.words.defaultfontname | |||
5.8.7 | Confluence | Set this property to change the default font for rendering Word ( Specify just the name of the font (not the path). | |
confluence.document.conversion.slides.defaultfontname.regular | |||
5.8.7 | Confluence | Set this property to change the default font for rendering regular fonts in Powerpoint ( Specify just the name of the font (not the path). | |
confluence.document.conversion.slides.defaultfontname.asian | |||
5.8.7 | TakaoPGothic | Confluence | Set this property to change the default font for rendering asian fonts in Powerpoint ( Specify just the name of the font (not the path). |
confluence.document.conversion.slides.defaultfontname.symbol | |||
5.8.7 | Confluence | Set this property to change the default font for rendering symbols in Powerpoint ( This is the font that will be used for bullets and other symbols when the font Specify just the name of the font (not the path). | |
confluence.clickjacking.protection.disable | |||
5.8.15 | false | Confluence | Security features prevent Confluence from being embedded in an <iframe> . To disable this protection, set this property to true which will allow Confluence to be embedded in an <iframe> . |
confluence.cluster.index.recovery.query.timeout | |||
5.9.1 | 10 | In Confluence Data Center, the amount of time, in seconds, that a confluence node needing index recovery will wait for another node to offer an index snapshot, before it gives up and stops attempting to recover the index. | |
confluence.cluster.index.recovery.generation.timeout | |||
5.9.1 | 120 | In Confluence Data Center, the amount of time, in seconds, that a confluence node needing index recovery will wait for an index snapshot to be created by another node, before it gives up and and stops attempting to recover the index. | |
confluence.cluster.index.recovery.num.attempts | |||
5.9.1 | 1 | In Confluence Data Center, the number of times that a node needing index recovery will attempt to recover its index. Set this property to 0 to disable index recovery on that node (for example, when you want to force a node to automatically rebuild its own index on startup). | |
com.atlassian.confluence.officeconnector.canary.memory_value | |||
5.9.1 | 1024 | Confluence | Sets the memory (in megabytes) available to the Office Connector Canary process, which is a workaround for a known issue with the Import from Word option. See JVM crashes during Import from Word in Confluence for more information. |
com.atlassian.confluence.officeconnector.canary.timeout | |||
5.9.1 | 120000 | Confluence | Sets the maximum timeout (in milliseconds) for the Office Connector Canary process, which is a workaround for a known issue with the Import from Word option. See JVM crashes during Import from Word in Confluence for more information. |
atlassian.plugins.enable.wait | |||
5.9.5 | 300 | Set this property to increase the default time to wait for plugins to start up. This is useful if you have problems with plugins not starting up in time, causing Confluence to fail to start. | |
confluence.cluster.hazelcast.max.no.heartbeat.seconds | |||
5.9.7 | 30 | Confluence | In Confluence Data Center, this sets how long (in seconds) a node can be out of communication with the cluster before it's removed from the cluster. See balancing uptime and data integrity for more info on when you may want to change this setting. |
confluence.startup.remigration.disable | |||
5.10.8 | False | ||
cluster.safety.time.to.live.split.ms | |||
6.0.0 | 60000 | In Confluence Data Center, this is the amount of time (in milliseconds) that the cluster safety job will wait to allow the nodes to rejoin after a split brain is detected. If the node still can't find the cluster safety number in the cache after this time, the node will panic. | |
confluence.cph.max.entries | |||
6.0.0 | 2000 | Confluence | This is the maximum number of pages that can be copied when you copy a page and its child pages. Increase this if you need to copy a page with more than the default number of child pages. |
confluence.cph.batch.size | |||
6.0.0 | 10 | Confluence | This is the number of pages copied in each batch when you copy a page and its children. Increase or reduce this number if you experience problems copying a page with many child pages. |
synchrony.port (formerly known as reza.port) | |||
6.0.0 | 8091 | This is the port that Synchrony, the service that powers collaborative editing, runs on. You should only need to change this if port 8091 is not available. For Confluence Data Center system properties see Configuring Synchrony for Data Center. From 6.0.4, Confluence Server will accept either reza.port or synchrony.port . | |
synchrony.memory.max (formerly reza.memory.max) | |||
6.0.0 | 1g | This is the maximum heap size (Xmx) allocated to Synchrony, the service that powers collaborative editing. Change this value if you need to increase or decrease the heap size. For Confluence Data Center system properties see Configuring Synchrony for Data Center. From 6.0.4, Confluence Server will accept either reza.memory.max or synchrony.memory.max . | |
synchrony.stack.space | |||
6.0.0 | 2048k | This sets the stack size (Xss) of the Synchrony JVM. Increase if you experience stack overflow errors, or decrease if you experience out of memory errors from Synchrony. | |
synchrony.enable.xhr.fallback | |||
6.0.0 | True | XML HTTP Request (XHR) fallback allows a user, who cannot connect to Synchrony via a WebSocket, to use the Confluence Editor. From Confluence 6.1 this is enabled by default, and only used when a WebSocket connection is not available. You should not need to disable this, unless directed by our support team. | |
synchrony.database.test.connection.on.checkin | |||
6.0.0 | True | Verifies the connection to the database is valid at every connection checkin. Atlassian Support may suggest you set this property to False if you experience performance issues in sites that have very frequent page edits. | |
synchrony.proxy.enabled | |||
6.0.0 | True | By default, Confluence uses an internal proxy to communicate between the Confluence JVM and Synchrony JVM. See Administering Collaborative Editing for more information. In Confluence 6.0, set this property to In Confluence 6.1 or later it should not be necessary to use this system property, as Confluence intelligently determines when to use the proxy. This property has no effect in Confluence Data Center. | |
synchrony.bind (formerly known as reza.bind) | |||
6.0.0 | 0.0.0.0 | This is the specific network interface that Synchrony listens on. It is unlikely that you will need to change this in Confluence Server. In Confluence Data Center this should be set to the same value as synchrony.cluster.bind . From 6.0.4, Confluence Server will accept either reza.bind or synchrony.bind . | |
synchrony.context.path | |||
6.0.0 | /synchrony | This is the context path for Synchrony. There should be no need to change this in Confluence Server. | |
confluence.flyingpdf.default.characters.per.line | |||
6.0.3 | 80 | If the total characters in a table column heading exceeds the value of this property, Confluence will automatically adjust the width of the other table columns so that all columns will fit within one page when the page is exported to PDF. | |
synchrony.host | |||
6.0.4 | 127.0.0.1 | This is the IP that Confluence uses to connect to Synchrony. It defaults to localhost. Change this if you need to allow Confluence to contact Synchrony via a custom hostname or IP address. | |
synchrony.proxy.healthcheck.disabled | |||
6.1.0 | false | The Synchrony proxy health check is used to check whether the Synchrony proxy is running and responding to requests. It requires a http connection. If a http connector is not present in your server.xml (for example you're using a https or AJP connector) the health check will fail even if the Synchrony proxy is operational. You can use this system property to disable the health check if necessary. | |
page.index.macro.max.pages | |||
6.1.4 | 5000 | Sets the maximum number of pages that the Page Index macro can display. The Page Index macro can significantly slow down your Confluence instance and cause out of memory errors when used in a space with a large number of pages. If the number of pages in the space exceeds this limit, the Page Index macro will show a page count, and a message that there are too many pages to display. | |
atlassian.indexing.attachment.maxsize | |||
6.2.2 | 104857600 | When a file is uploaded, its text is extracted and indexed. This allows people to search for the content of a file, not just the filename. If the uploaded file is larger than the limit set by this property (default is 100MB, in bytes), text extraction and indexing will be skipped. See Configuring Attachment Size for more info. | |
officeconnector.excel.extractor.maxlength | |||
6.2.2 | 1048576 | When a file is uploaded, its text is extracted and indexed. This allows people to search for the content of a file, not just the filename. Confluence will only extract content from an Excel spreadsheet up to the limit set by this property (default is 1MB, in bytes), before proceeding to index it. This will mean that only part of file's contents are searchable. See Configuring Attachment Size for more info. | |
confluence.collab.edit.user.limit | |||
6.3.0 | 12 | When collaborative editing is enabled, this sets the maximum number of users that can simultaneously edit a page. Reduce this number if you experience degraded performance when many people are editing. |