facebook / facebook/rocksdb

Why `partial_merge` not called when `get` is called and there are multiple merge operations?

Open
#11,023 8 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
32.1k
Forks
6.9k
Avg merge
32m
Merged PRs (30d)
1

Description

Hi,

I've encountered a scenario where a get operation is performed after a large number of merge operations, and observed that the number of operators in the merge_operator triggered by the get operation has been incrementing, and only the full_merge callback set at initialization was called.

But according to the wiki description, if there are multiple merge operations when the get operation is executed, it should first call partial_merge to try to merge the operands, so why does this logic only trigger when the compaction is performed (tested)?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.