Hi!

> Put a link to the issue below '---' delimiter next time.

Ok!

> Please, add a brief explanation to the commit message and then patch will
> be OK to push. Thanks.

When vinyl_run_size_ratio less then 2, LSM-tree could work incorrect.

For example:
Suppose the L0 size is 100Mb, the ratio of run sizes at each LSM-tree
level is 1.5 and there can be no more than 2 runs per level (the variable
vinyl_run_count_per_level). After the first 3 dumps, the disk will contain
3 runs of 100 Mb at L1. Let the dump contain many delete operations, so
the runs will be compacted into a single 200 Mb run. It will be moved to L2.
The next 3 dumps will produce 300 Mb run and it will be moved to L3,
because there could be only 150-225 Mb files at L2. the new file is
lower than the old one, what contradicts the basic idea of the tree LSM-tree.
Similarly with the vinyl_run_count_per_level = 1.

branch: https://github.com/maksimkulis/tarantool/tree/maksimkulis/bh-3346-fix-run-size-ratio


Пятница, 31 января 2020, 3:24 +03:00 от Nikita Pettik <korablev@tarantool.org>:

On 24 Jan 14:04, Maxim Kulis wrote:
>
>
> Hi!
> Yes, here is the new patch.
>
> Change the minimum possible value of the variable vinyl_run_size_ratio to 2.
>
> Closes #3346
>
> issue: https://github.com/tarantool/tarantool/issues/3346
> ---

Put a link to the issue below '---' delimiter next time.

> >> >Finally, I would add brief explanation to the commit message why
> >> >run_size_ratio less than 2 is meaningless (for those who are not
> >> >familiar with vinyl inner organization).

Please, add a brief explanation to the commit message and then patch will
be OK to push. Thanks.



--
Maxim Kulis