Configuration: Storage

The following configuration options allow you configure the storage engine.

Storage.TempPath

Use this setting to specify a different path for the database temporary files.
By default, temporary files are created under the Temp directory at the same location as Raven.voron data file.

To specify a different path for the indexes temporary files go to Indexing.TempPath.
Learn more about RavenDB directory structure here.

  • Type: string
  • Default: null
  • Scope: Server-wide or per database

Storage.TransactionsModeDurationInMin

How long transaction mode (Danger/Lazy) lasts before returning to Safe Mode. Value in minutes with default set to 1440 (24 hours). Set value to 0 for infinite.

  • Type: int
  • Default: 1440
  • Scope: Server-wide or per database

Storage.MaxConcurrentFlushes

Maximum concurrent flushes.

  • Type: int
  • Default: 10
  • Scope: Server-wide or per database

Storage.TimeToSyncAfterFlushInSec

Time to sync after flush in seconds

  • Type: int
  • Default: 30
  • Scope: Server-wide or per database

Storage.NumberOfConcurrentSyncsPerPhysicalDrive

Number of concurrent syncs per physical drive.

  • Type: int
  • Default: 3
  • Scope: Server-wide or per database

Storage.CompressTxAboveSizeInKb

Compress transactions above size (value in KB)

  • Type: int
  • Default: 512
  • Scope: Server-wide or per database

Storage.ForceUsing32BitsPager

Use the 32 bits memory mapped pager even when running on 64 bits.

  • Type: bool
  • Default: false
  • Scope: Server-wide only

Storage.MaxScratchBufferSizeInMb

Maximum size of .buffers files

  • Type: int
  • Default: 256 when running on 64 bits, 32 when running on 32 bits or Storage.ForceUsing32BitsPager is set to true
  • Scope: Server-wide or per database

Storage.PrefetchBatchSizeInKb

Size of the batch in kilobytes that will be requested to the OS from disk when prefetching (value in powers of 2). Some OSs may not honor certain values. Experts only.

  • Type: int
  • Default: 1024
  • Scope: Server-wide or per database

Storage.PrefetchResetThresholdInGb

How many gigabytes of memory should be prefetched before restarting the prefetch tracker table. Experts only.

  • Type: int
  • Default: 8
  • Scope: Server-wide or per database

Storage.OnDirectoryInitialize.Exec

A command or executable to run when creating/opening a directory (storage environment). Experts only.
RavenDB will execute:

command [user-arg-1] ... [user-arg-n] <environment-type> <database-name> <data-dir-path> <temp-dir-path> <journal-dir-path>
  • Type: string
  • Default: null
  • Scope: Server-wide or per database

Storage.OnDirectoryInitialize.Exec.Arguments

The optional user arguments for the 'Storage.OnDirectoryInitialize.Exec' command or executable. The arguments must be escaped for the command line. Experts only.

  • Type: string
  • Default: null
  • Scope: Server-wide or per database

Storage.OnDirectoryInitialize.Exec.TimeoutInSec

The number of seconds to wait for the OnDirectoryInitialize executable to exit. Default: 30 seconds. Experts only.

  • Type: int
  • Default: 30
  • Scope: Server-wide or per database

Storage.Dangerous.SkipChecksumValidationOnDatabaseLoading

Skip checksum validation on database loading process (applicable only for ARM 32/64). Default: false. Experts only. Should be set to true in order to skip checksum verification of modifications in database recovery, if process takes too long (checksum calculation on some ARM machines is somewhat slower sometimes) Although gaining faster recovery time and server startup time, skipping checksum validation may cause later report on corrupted data if one was exists during historical revocery.

  • Type: bool
  • Default: false
  • Scope: Server-wide