[ 
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)

Reply via email to