[
https://issues.apache.org/jira/browse/HBASE-23705?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17024439#comment-17024439
]
Michael Stack commented on HBASE-23705:
---------------------------------------
Re-resolve. I put this patch back. It is not responsible for the branch-2
failures either.
> Add CellComparator to HFileContext
> ----------------------------------
>
> Key: HBASE-23705
> URL: https://issues.apache.org/jira/browse/HBASE-23705
> Project: HBase
> Issue Type: Sub-task
> Components: io
> Reporter: Michael Stack
> Assignee: Michael Stack
> Priority: Major
> Fix For: 3.0.0, 2.3.0
>
>
> The HFileContext is present when reading and writing files. It is populated
> at read time using HFile trailer content and file metadata. At write time, we
> create it up front.
> Interesting is that though CellComparator is written to the HFile trailer,
> and parse of the Trailer creates an HFileInfo which builds the HFileContext
> at read time, the HFileContext does not expose what CellComparator to use
> decoding and seeking. Around the codebase there are various compensations
> made for this lack with decoders that actually have a decoding context (with
> a reference to the hfilecontext), hard-coding use of the default
> CellComparator. StoreFileInfo will use default if not passed a comparator
> (even though we'd just read the trailer and even though it has reference to
> filecontext) and HFile does similar. What CellComparator to use in a given
> context is confused.
> Let me fix this situation removing ambiguity. It will also fix bugs in parent
> issue where UTs are failing because wrong CellComparator is being used.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)