Memory and Journal Settings
- Last Updated: April 15, 2026
- 4 minute read
- MarkLogic Server
- Version 12.0
- Documentation
The memory and journal settings are automatically configured at installation time. The memory settings configure the memory limits for the system, and the journal settings control the transactional journal, used for recovery if a database transaction fails. The default settings should be sufficient for most systems. Depending on the system workload, setting the memory settings incorrectly can adversely affect performance; if you need to change the settings and you have an active maintenance contract, you can contact MarkLogic Support for help.
This table describes the memory and journal settings:
Database Setting |
Description |
|---|---|
In Memory Limit |
The maximum number of fragments in an in-memory stand. An in-memory stand contains the latest version of any new or changed fragments. Periodically, in-memory stands are written to disk as a new stand in the forest. Also, if a stand accumulates a number of fragments beyond this limit, it is automatically saved to disk by a background thread. |
In Memory List Size |
The size, in megabytes, of the in-memory list storage. |
In Memory Tree Size |
The size, in megabytes, of the in-memory tree storage. The |
In Memory Range Index Size |
The size, in megabytes, of the in-memory range index storage. |
In Memory Reverse Index Size |
The size, in megabytes, of the in-memory reverse index storage. |
In Memory Triple Index Size |
The size, in megabytes, of the in-memory triple index storage. |
Large Size Threshold |
Determines the size, in kilobytes, beyond which large binary documents are stored in the Large Data Directory instead of directly in a stand. Binaries smaller than or equal to the threshold are considered small binary files and stored in stands. Binaries larger the threshold are considered large binary files and stored in the Large Data Directory. |
Locking |
Specifies how robust transaction locking should be. When set to |
Journaling |
Specifies how robust transaction journaling should be. When set to |
Journal Size |
The size, in megabytes, of each journal file. The system uses journal files for recovery operations if a transaction fails to complete successfully. The default value should be sufficient for most systems; it is calculated at database configuration time based on the size of your system. If you change the other memory settings, however, the journal size should equal the sum of the When you change the journal size, the next time the system creates a new journal, it will use the new size limit; existing journals will continue to use the old size limit until they are replaced with new ones (for example, when a journal fills up, when a forest is cleared, or when the system is cleanly shutdown and restarted). |
Preallocate Journals |
This setting has no effect. |
Preload Mapped Data |
Specifies whether memory mapped data (for example, range indexes and word lexicons) is loaded into memory when a forest is mounted to the database. Preloading the memory mapped data improves query performance, but uses more memory, especially if you have a lot of range indexes and/or lexicons. Also, it will cause a lot of disk I/O at database startup time, slowing the system performance during the time the mapped data is read into memory. If you do not preload the mapped data, it will be paged into memory dynamically when a query requests data that needs it, slowing the query response time. |
Range Index Optimize |
Specifies how range indexes are to be optimized. When set to |