| # ============================================= Extra JVM System Properties =========================================== |
| # To avoid clutter on the command line, any properties in this file will be added as system properties on server start. |
| |
| # Example: If you need an option -Dmy.property=whatever, you can instead add it here as |
| # my.property=whatever |
| |
| # Required to locate Cassandra driver configuration |
| config.file=conf/cassandra-driver.conf |
| |
| # (Optional). String (size, integer + size units, example: `12 KIB`, supported units are bytes KIB MIB GIB TIB). Defaults to 100KIB. |
| # This governs the threshold MimeMessageInputStreamSource relies on for storing MimeMessage content on disk. |
| # Below, data is stored in memory. Above data is stored on disk. |
| # Lower values will lead to longer processing time but will minimize heap memory usage. Modern SSD hardware |
| # should however support a high throughput. Higher values will lead to faster single mail processing at the cost |
| # of higher heap usage. |
| #james.message.memory.threshold=12K |
| |
| # Optional. Boolean. Defaults to false. Recommended value is false. |
| # Should MimeMessageWrapper use a copy of the message in memory? Or should bigger message exceeding james.message.memory.threshold |
| # be copied to temporary files? |
| #james.message.usememorycopy=false |
| |
| # Mode level of resource leak detection. It is used to detect a resource not be disposed of before it's garbage-collected. |
| # Example `MimeMessageInputStreamSource` |
| # Optional. Allowed values are: none, simple, advanced, testing |
| # - none: Disables resource leak detection. |
| # - simple: Enables output a simplistic error log if a leak is encountered and would free the resources (default). |
| # - advanced: Enables output an advanced error log implying the place of allocation of the underlying object and would free resources. |
| # - testing: Enables output an advanced error log implying the place of allocation of the underlying object and rethrow an error, that action is being taken by the development team. |
| #james.lifecycle.leak.detection.mode=simple |
| |
| # Should we add the host in the MDC logging context for incoming IMAP, SMTP, POP3? Doing so, a DNS resolution |
| # is attempted for each incoming connection, which can be costly. Remote IP is always added to the logging context. |
| # Optional. Boolean. Defaults to true. |
| #james.protocols.mdc.hostname=true |
| |
| # Manage netty leak detection level see https://netty.io/wiki/reference-counted-objects.html#leak-detection-levels |
| # io.netty.leakDetection.level=SIMPLE |
| |
| # Should James exit on Startup error? Boolean, defaults to true. This prevents partial startup. |
| # james.exit.on.startup.error=true |
| |
| # Fails explicitly on missing configuration file rather that taking implicit values. Defautls to false. |
| # james.fail.on.missing.configuration=true |
| |
| # JMX, when enable causes RMI to plan System.gc every hour. Set this instead to once every 1000h. |
| sun.rmi.dgc.server.gcInterval=3600000000 |
| sun.rmi.dgc.client.gcInterval=3600000000 |
| |
| # Automatically generate a JMX password upon start. CLI is able to retrieve this password. Not supported on windows. |
| james.jmx.credential.generation=true |
| |
| # Disable Remote Code Execution feature from JMX |
| # CF https://github.com/AdoptOpenJDK/openjdk-jdk11/blob/19fb8f93c59dfd791f62d41f332db9e306bc1422/src/java.management/share/classes/com/sun/jmx/remote/security/MBeanServerAccessController.java#L646 |
| jmx.remote.x.mlet.allow.getMBeansFromURL=false |
| |
| # Disabling JMAP filters event source increments is necessary during rolling adoption of this change. |
| # Defaults to true, meaning James will use JMAP filters event source increments, thus transparently and significantly |
| # improving JMAP filter storage efficiency. Snapshots enable to only build the aggregate from the last few events. |
| # james.jmap.filters.eventsource.increments.enabled=true |
| # james.jmap.filters.eventsource.snapshots.enabled=true |
| |
| # On Java >= 9 Netty requires the io.netty.tryReflectionSetAccessible system property to be set to true to enable |
| # This setting was taken from Cassandra jvm11-server.option |
| io.netty.tryReflectionSetAccessible=true |