[
https://issues.apache.org/jira/browse/ORC-184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16008431#comment-16008431
]
ASF GitHub Bot commented on ORC-184:
------------------------------------
Github user wgtmac commented on the issue:
https://github.com/apache/orc/pull/120
We are progressively working on moving all the code here. As there is a big
gap between the current code and our code, it is not possible to create a PR
for ColumnWriter right now.
This PR is not a final decision, but a piece of code to show our ideas and
introduce the discussion as we actually need some sort of ColumnStatistics
class to act as the base class in the ColumnWriter implementation. To use your
InternalStatisticsImpl<Type>, I have following thoughts:
1) InternalStatisticsImpl<Type> is an implementation class, so the
interface functions like increase, merge, reset, etc. should still be defined
in a base class somewhere;
2) We can implement ColumnWriter class using templates as well to adopt
InternalStatisticsImpl<Type>; but ColumnWriter and ColumnStatistics are
slightly different since ColumnWriter has more types and less common code, so I
doubt template is not a good choice for ColumnWriter class.
3) BTW, I really appreciate your refactoring in your PR @majetideepak. I
would like to add our code based on your changes. Before that, we have to
achieve a consensus on which class is the best choice of the base class in
ColumnWriter implementation (like the ColumnStatisticsImpl on the java side).
In our design, it is ColumnStatistics itself.
> [C++] Refactor ColumnStatistics classes for writer
> --------------------------------------------------
>
> Key: ORC-184
> URL: https://issues.apache.org/jira/browse/ORC-184
> Project: ORC
> Issue Type: Sub-task
> Components: C++
> Reporter: Gang Wu
> Assignee: Gang Wu
>
> 1. Add setter functions to ColumnStatistics.
> 2. Refactor ColumnStatistics to reduce duplicate code.
> 3. Add more functions in Int128 and Decimal classes for
> DecimalColumnStatistics.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)