You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Antoine Pitrou (Jira)" <ji...@apache.org> on 2021/12/28 21:02:00 UTC
[jira] [Commented] (ARROW-15211) Deprecate ChunkedArray public constructors
[ https://issues.apache.org/jira/browse/ARROW-15211?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17466213#comment-17466213 ]
Antoine Pitrou commented on ARROW-15211:
----------------------------------------
There is a potential concern with performance here. Also it's not very nice to break user code calling these APIs.
> Deprecate ChunkedArray public constructors
> ------------------------------------------
>
> Key: ARROW-15211
> URL: https://issues.apache.org/jira/browse/ARROW-15211
> Project: Apache Arrow
> Issue Type: Improvement
> Components: C++
> Reporter: Eduardo Ponce
> Priority: Minor
>
> The convention for the higher-level Arrow data structures (Table, RecordBatch) is to provide a public {{Make()}} method for creating objects with validation checks. The constructors are set to {{protected}} and do not perform validation checks, so they should be only invoked with valid inputs. {{ChunkedArray}} provides both public constructors and {{Make()}}. We should deprecate the public constructors and be consistent with the other data structures.
> For more details on the Arrow data structures, [see this discussion|https://github.com/apache/arrow/pull/12036#issuecomment-1002242875].
> Note: The codebase has many statements of the form {{std::make_shared<ChunkedArray>(...)}} which should be changed to {{ChunkedArray::Make(...)}}.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)