mdbx: add MDBX_opt_merge_threshold_16dot16_percent option.

Change-Id: I416f85096e4b6fd21f2db622f07f31103cb9074a
This commit is contained in:
Leonid Yuriev
2021-05-06 02:05:33 +03:00
parent 009e3d6c0f
commit 1275bdb623
3 changed files with 43 additions and 11 deletions

11
mdbx.h
View File

@@ -1951,6 +1951,17 @@ enum MDBX_option_t {
* Default is 0, i.e. by default no spilling performed during starting nested
* transactions, that correspond historically behaviour. */
MDBX_opt_spill_parent4child_denominator,
/** \brief Controls the in-process threshold of semi-empty pages merge.
* \warning This is experimental option and subject for change or removal.
* \details This option controls the in-process threshold of minimum page
* fill, as used space of percentage of a page. Neighbour pages emptier than
* this value are candidates for merging. The threshold value is specified
* in 1/65536 of percent, which is equivalent to the 16-dot-16 fixed point
* format. The specified value must be in the range from 12.5% (almost empty)
* to 50% (half empty) which corresponds to the range from 8192 and to 32768
* in units respectively. */
MDBX_opt_merge_threshold_16dot16_percent,
};
#ifndef __cplusplus
/** \ingroup c_settings */