@@ -1866,3 +1866,249 @@ The ``security`` section defines configuration parameters related to various sec
1866
1866
| Type: boolean
1867
1867
| Default: false
1868
1868
| Environment variable: TT_SECURITY_SECURE_ERASING
1869
+
1870
+ .. _configuration_reference_snapshot :
1871
+
1872
+ snapshot
1873
+ --------
1874
+
1875
+ The ``snapshot `` section defines configuration parameters related to
1876
+
1877
+ .. NOTE ::
1878
+
1879
+ ``snapshot `` can be defined in any :ref: `scope <configuration_scopes >`.
1880
+
1881
+ - :ref: `snapshot.by.interval <configuration_reference_snapshot_by_interval >`
1882
+ - :ref: `snapshot.by.wal_size <configuration_reference_snapshot_by_wal_size >`
1883
+ - :ref: `snapshot.count <configuration_reference_snapshot_count >`
1884
+ - :ref: `snapshot.dir <configuration_reference_snapshot_dir >`
1885
+ - :ref: `snapshot.snap_io_rate_limit <configuration_reference_snapshot_snap_io_rate_limit >`
1886
+
1887
+ .. _configuration_reference_snapshot_by_interval :
1888
+
1889
+ .. confval :: snapshot.by.interval
1890
+
1891
+ Description
1892
+
1893
+ |
1894
+ | Type: number
1895
+ | Default: 3600
1896
+ | Environment variable: TT_SNAPSHOT_BY_INTERVAL
1897
+
1898
+ .. _configuration_reference_snapshot_by_wal_size :
1899
+
1900
+ .. confval :: snapshot.by.wal_size
1901
+
1902
+ Description
1903
+
1904
+ |
1905
+ | Type: number
1906
+ | Default: 3600
1907
+ | Environment variable: TT_SNAPSHOT_BY_WAL_SIZE
1908
+
1909
+ .. _configuration_reference_snapshot_count :
1910
+
1911
+ .. confval :: snapshot.count
1912
+
1913
+ Description
1914
+
1915
+ |
1916
+ | Type: integer
1917
+ | Default: 2
1918
+ | Environment variable: TT_SNAPSHOT_COUNT
1919
+
1920
+ .. _configuration_reference_snapshot_dir :
1921
+
1922
+ .. confval :: snapshot.dir
1923
+
1924
+ Description
1925
+
1926
+ |
1927
+ | Type: string
1928
+ | Default: 'var/lib/{{ instance_name }}'
1929
+ | Environment variable: TT_SNAPSHOT_DIR
1930
+
1931
+
1932
+ .. _configuration_reference_snapshot_snap_io_rate_limit :
1933
+
1934
+ .. confval :: snapshot.snap_io_rate_limit
1935
+
1936
+ Reduce the throttling effect of :doc: `box.snapshot() </reference/reference_lua/box_snapshot >` on
1937
+ INSERT/UPDATE/DELETE performance by setting a limit on how many
1938
+ megabytes per second it can write to disk. The same can be
1939
+ achieved by splitting :ref: `wal.dir <configuration_reference_wal_dir >` and
1940
+ :ref: `memtx_dir <cfg_basic-memtx_dir >`
1941
+ locations and moving snapshots to a separate disk.
1942
+ The limit also affects what
1943
+ :ref: `box.stat.vinyl().regulator <box_introspection-box_stat_vinyl_regulator >`
1944
+ may show for the write rate of dumps to ``.run `` and ``.index `` files.
1945
+
1946
+ |
1947
+ | Type: number
1948
+ | Default: box.NULL
1949
+ | Environment variable: TT_SNAPSHOT_SNAP_IO_RATE_LIMIT
1950
+
1951
+
1952
+ .. _configuration_reference_wal :
1953
+
1954
+ wal
1955
+ ---
1956
+
1957
+ The ``wal `` section defines configuration parameters related to
1958
+
1959
+ .. NOTE ::
1960
+
1961
+ ``wal `` can be defined in any :ref: `scope <configuration_scopes >`.
1962
+
1963
+ - :ref: `wal.cleanup_delay <configuration_reference_wal_cleanup_delay >`
1964
+ - :ref: `wal.dir <configuration_reference_wal_dir >`
1965
+ - :ref: `wal.dir_rescan_delay <configuration_reference_wal_dir_rescan_delay >`
1966
+ - :ref: `wal.ext.new <configuration_reference_wal_ext_new >`
1967
+ - :ref: `wal.ext.old <configuration_reference_wal_ext_old >`
1968
+ - :ref: `wal.ext.spaces <configuration_reference_wal_ext_spaces >`
1969
+ - :ref: `wal.wal_max_size <configuration_reference_wal_max_size >`
1970
+ - :ref: `wal.mode <configuration_reference_wal_mode >`
1971
+ - :ref: `wal.queue_max_size <configuration_reference_wal_queue_max_size >`
1972
+
1973
+ .. _configuration_reference_wal_cleanup_delay :
1974
+
1975
+ .. confval :: wal.cleanup_delay
1976
+
1977
+ The delay in seconds used to prevent the :ref: `Tarantool garbage collector <cfg_checkpoint_daemon-garbage-collector >`
1978
+ from immediately removing :ref: `write-ahead log <internals-wal >` files after a node restart.
1979
+ This delay eliminates possible erroneous situations when the master deletes WALs
1980
+ needed by :ref: `replicas <replication-roles >` after restart.
1981
+ As a consequence, replicas sync with the master faster after its restart and
1982
+ don't need to download all the data again.
1983
+
1984
+ Once all the nodes in the replica set are up and running,
1985
+ automatic cleanup is started again even if ``wal.cleanup_delay `` has not expired.
1986
+
1987
+ .. NOTE ::
1988
+
1989
+ The option has no effect on nodes running as
1990
+ :ref: `anonymous replicas <cfg_replication-replication_anon >`.
1991
+
1992
+ |
1993
+ | Type: number
1994
+ | Default: 14400
1995
+ | Environment variable: TT_WAL_CLEANUP_DELAY
1996
+
1997
+ .. _configuration_reference_wal_dir :
1998
+
1999
+ .. confval :: wal.dir
2000
+
2001
+ A directory where write-ahead log (.xlog) files are stored. Can be relative
2002
+ to :ref: `work_dir <cfg_basic-work_dir >`. Sometimes ``wal_dir `` and
2003
+ :ref: `memtx_dir <cfg_basic-memtx_dir >` are specified with different values, so
2004
+ that write-ahead log files and snapshot files can be stored on different
2005
+ disks. If not specified, defaults to ``work_dir ``.
2006
+
2007
+ |
2008
+ | Type: string
2009
+ | Default: 'var/lib/{{ instance_name }}'
2010
+ | Environment variable: TT_WAL_DIR
2011
+
2012
+ .. _configuration_reference_wal_dir_rescan_delay :
2013
+
2014
+ .. confval :: wal.dir_rescan_delay
2015
+
2016
+ Number of seconds between periodic scans of the write-ahead-log
2017
+ file directory, when checking for changes to write-ahead-log
2018
+ files for the sake of :ref: `replication <replication >` or :ref: `hot standby <index-hot_standby >`.
2019
+
2020
+ |
2021
+ | Type: number
2022
+ | Default: 2
2023
+ | Environment variable: TT_WAL_DIR_RESCAN_DELAY
2024
+
2025
+ .. _configuration_reference_wal_ext_new :
2026
+
2027
+ .. confval :: wal.ext_new
2028
+
2029
+ (**Enterprise Edition only **)
2030
+
2031
+ Description
2032
+
2033
+ |
2034
+ | Type: boolean
2035
+ | Default: nil
2036
+ | Environment variable: TT_WAL_EXT_NEW
2037
+
2038
+ .. _configuration_reference_wal_ext_old :
2039
+
2040
+ .. confval :: wal.ext_old
2041
+
2042
+ (**Enterprise Edition only **)
2043
+ Description
2044
+
2045
+ |
2046
+ | Type: boolean
2047
+ | Default: nil
2048
+ | Environment variable: TT_WAL_EXT_OLD
2049
+
2050
+ .. _configuration_reference_wal_ext_spaces :
2051
+
2052
+ .. confval :: wal.ext_spaces
2053
+
2054
+ (**Enterprise Edition only **)
2055
+ Description
2056
+
2057
+ |
2058
+ | Type: map
2059
+ | Default: nil
2060
+ | Environment variable: TT_WAL_EXT_SPACES
2061
+
2062
+
2063
+ .. _configuration_reference_wal_max_size :
2064
+
2065
+ .. confval :: wal.wal_max_size
2066
+
2067
+ The maximum number of bytes in a single write-ahead log file.
2068
+ When a request would cause an ``.xlog `` file to become larger than
2069
+ ``wal_max_size ``, Tarantool creates a new WAL file.
2070
+
2071
+ |
2072
+ | Type: integer
2073
+ | Default: 268435456
2074
+ | Environment variable: TT_WAL_MAX_SIZE
2075
+
2076
+ .. _configuration_reference_wal_mode :
2077
+
2078
+ .. confval :: wal.mode
2079
+
2080
+ Specify fiber-WAL-disk synchronization mode as:
2081
+
2082
+ * ``none ``: write-ahead log is not maintained.
2083
+ A node with ``wal.mode = none `` can't be replication master.
2084
+
2085
+ * ``write ``: :ref: `fibers <fiber-fibers >` wait for their data to be written to
2086
+ the write-ahead log (no :manpage: `fsync(2)`).
2087
+
2088
+ * ``fsync ``: fibers wait for their data, :manpage: `fsync(2)`
2089
+ follows each :manpage: `write(2)`.
2090
+
2091
+ |
2092
+ | Type: string
2093
+ | Default: 'write'
2094
+ | Environment variable: TT_WAL_MODE
2095
+
2096
+ .. _configuration_reference_wal_queue_max_size :
2097
+
2098
+ .. confval :: wal.queue_max_size
2099
+
2100
+ The size of the queue in bytes used by a :ref: `replica <replication-roles >` to submit
2101
+ new transactions to a :ref: `write-ahead log<internals-wal> ` (WAL).
2102
+ This option helps limit the rate at which a replica submits transactions to the WAL.
2103
+ Limiting the queue size might be useful when a replica is trying to sync with a master and
2104
+ reads new transactions faster than writing them to the WAL.
2105
+
2106
+ .. NOTE ::
2107
+
2108
+ You might consider increasing the ``wal.queue_max_size `` value in case of
2109
+ large tuples (approximately one megabyte or larger).
2110
+
2111
+ |
2112
+ | Type: integer
2113
+ | Default: 16777216
2114
+ | Environment variable: TT_WAL_QUEUE_MAX_SIZE
0 commit comments