Closed dethi closed 11 months ago
Attention: 2 lines
in your changes are missing coverage. Please review.
Comparison is base (
642db04
) 70.22% compared to head (0279695
) 70.12%.
Files | Patch % | Lines |
---|---|---|
hrpc/snapshot.go | 0.00% | 2 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
HBase has 2 snapshot formats: version 0 and version 2. Version 2 is more efficient as it doesn't require the creation of thousand of empty files and instead create a single manifest file[1].
The snapshot format version is dependent of the SnapshotDescription. When the version is not set, HBase will use the default version. In HBase 1.x/2.x, the default version is 2.
Unfortunately, gohbase implementation always set the version to 0, even when the caller didn't explicitly set the version. This is is because internally gohbase use an int32 (not a pointer) which default to 0 implicitly.
This change switch the internal storage to a pointer, to match the "optional" behaviour on the protobuf side.
[1] More details at: