[
https://issues.apache.org/jira/browse/ARROW-15928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17515284#comment-17515284
]
David Li commented on ARROW-15928:
----------------------------------
[From GitHub|https://github.com/apache/arrow/issues/12761] there appears to be
another failing case:
{noformat}
import pyarrow as pa
values=pa.array([0,1],pa.int64())
mask=pa.array([True,False],pa.bool_())
replace=pa.array([5],pa.int64())
pa.compute.replace_with_mask(values,mask,replace) {noformat}
Chunked arrays fail because we simply don't implement them and try to evaluate
them as arrays. Not sure why it segfaults now, though.
> [C++][Python] replace_with_mask seg faults when passed ChunkedArray
> -------------------------------------------------------------------
>
> Key: ARROW-15928
> URL: https://issues.apache.org/jira/browse/ARROW-15928
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++, Python
> Affects Versions: 5.0.0, 6.0.0, 6.0.1, 7.0.0
> Reporter: Luke Manley
> Priority: Critical
> Labels: kernel
>
> It looks like most compute functions that take an array-like can accept a
> ChunkedArray as well. One exception to that appears to be replace_with_mask
> which seems to seg fault when the array-like is a chunked array. Here is an
> example:
>
>
> {code:java}
> import pyarrow as pa
> import pyarrow.compute as pc
> ca = pa.chunked_array([[1, 2], [3, 4]])
> mask = [False, True, False, True]
> # works (when we first combine chunks into a single array)
> a_new = pc.replace_with_mask(ca.combine_chunks(), mask, 0)
> # seg fault (if we try to pass the chunked array)
> ca_new = pc.replace_with_mask(ca, mask, 0){code}
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)