public class FullChangelogMergeFunctionWrapper extends Object implements MergeFunctionWrapper<FullChangelogMergeFunctionWrapper.Result>
MergeFunction
s to produce changelog during a full compaction.
This wrapper can only be used in SortMergeReader
because
KeyValue
s. As KeyValue
s are reused by readers
this may cause issues in other readers.
KeyValue
s with the same key come from different inner readers in SortMergeReader
, so there is no issue related to object reuse.
Modifier and Type | Class and Description |
---|---|
static class |
FullChangelogMergeFunctionWrapper.Result
Changelog and final result for the same key.
|
Constructor and Description |
---|
FullChangelogMergeFunctionWrapper(MergeFunction<KeyValue> mergeFunction,
int maxLevel) |
Modifier and Type | Method and Description |
---|---|
void |
add(KeyValue kv) |
FullChangelogMergeFunctionWrapper.Result |
getResult() |
void |
reset() |
public FullChangelogMergeFunctionWrapper(MergeFunction<KeyValue> mergeFunction, int maxLevel)
public void reset()
reset
in interface MergeFunctionWrapper<FullChangelogMergeFunctionWrapper.Result>
public void add(KeyValue kv)
add
in interface MergeFunctionWrapper<FullChangelogMergeFunctionWrapper.Result>
public FullChangelogMergeFunctionWrapper.Result getResult()
getResult
in interface MergeFunctionWrapper<FullChangelogMergeFunctionWrapper.Result>
Copyright © 2019–2023 The Apache Software Foundation. All rights reserved.