[ 
https://issues.apache.org/jira/browse/ARROW-15228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17467224#comment-17467224
 ] 

Antoine Pitrou commented on ARROW-15228:
----------------------------------------

This is expected, {{Reserve}} only reserves space for the indices, you also 
need to reserve space for the data by calling {{ReserveData}}.

> StringBuilder UnsafeAppend causes EXC_BAD_ACCESS
> ------------------------------------------------
>
>                 Key: ARROW-15228
>                 URL: https://issues.apache.org/jira/browse/ARROW-15228
>             Project: Apache Arrow
>          Issue Type: Improvement
>            Reporter: Will Ayd
>            Priority: Minor
>
> It seems that StringBuilder->UnsafeAppend produces a memory violation. This 
> is on macOS Monterey with an intel chip if it matters. Below is a sample 
> program that will reproduce the error:
>  
> ```cpp
> #include <arrow/api.h>
> arrow::Status RunMain(int argc, char** argv) {
>   auto builder = std::make_shared<arrow::StringBuilder>();
>   ARROW_RETURN_NOT_OK(builder->Reserve(1));
>   builder->UnsafeAppend(std::string("a"));
>   return arrow::Status::OK();
> }
> int main(int argc, char** argv) {
>   arrow::Status st = RunMain(argc, argv);
>   if (!st.ok()) {
>     return 1;
>   }
>   return 0;
> }
> ```
> I could not reproduce with another builder type



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to