Ankur deDev created ARROW-5145: ---------------------------------- Summary: RecordBatchFileWriter fails to write string dictionary Key: ARROW-5145 URL: https://issues.apache.org/jira/browse/ARROW-5145 Project: Apache Arrow Issue Type: Bug Components: C++ Affects Versions: 0.13.0 Environment: CentOS 7 devtoolset-8 Software Collection g++ (GCC) 8.2.1 20180905 (Red Hat 8.2.1-3) Reporter: Ankur deDev Attachments: repro.cpp
I am a new user of the C++ library trying to output data that contains dictionary columns using {{RecordBatchFileWriter}}. The attached code seg faults, it is able to write a {{Feather}} file but fails when I use the {{RecordBatchFileWriter}}. I am not sure whether I am using the library correctly, but the produced Feather file loads properly in Julia and has the expected data. I installed Arrow following the [instructions|https://arrow.apache.org/install/] for CentOS. Here is the stacktrace of the executable compiled with the command 'g++ -g -larrow repro.cpp' : {{Program terminated with signal SIGSEGV, Segmentation fault.}} {{#0 0x0000000000000000 in ?? ()}} {{Missing separate debuginfos, use: debuginfo-install arrow-libs-0.13.0-1.el7.x86_64 boost-filesystem-1.53.0-27.el7.x86_64 boost-regex-1.53.0-27.el7.x86_64 boost-system-1.53.0-27.el7.x86_64 double-conversion-2.0.1-3.el7.x86_64 gflags-2.1.1-6.el7.x86_64 glibc-2.17-260.el7_6.3.x86_64 glog-0.3.3-8.el7.x86_64 libgcc-4.8.5-36.el7.x86_64 libicu-50.1.2-17.el7.x86_64 libstdc++-4.8.5-36.el7.x86_64 libzstd-1.3.8-1.el7.x86_64 lz4-1.7.5-2.el7.x86_64 snappy-1.1.0-3.el7.x86_64 zlib-1.2.7-18.el7.x86_64}} {{(gdb) bt}} {{#0 0x0000000000000000 in ?? ()}} {{#1 0x00007f43fc8870d1 in arrow::ipc::internal::FieldToFlatbufferVisitor::GetResult(arrow::Field const&, flatbuffers::Offset<org::apache::arrow::flatbuf::Field>*) ()}} {{ from /lib64/libarrow.so.13}} {{#2 0x00007f43fc880374 in arrow::ipc::internal::FieldToFlatbuffer(flatbuffers::FlatBufferBuilder&, arrow::Field const&, arrow::ipc::DictionaryMemo*, flatbuffers::Offset<org::apache::arrow::flatbuf::Field>*) () from /lib64/libarrow.so.13}} {{#3 0x00007f43fc880759 in arrow::ipc::internal::SchemaToFlatbuffer(flatbuffers::FlatBufferBuilder&, arrow::Schema const&, arrow::ipc::DictionaryMemo*, flatbuffers::Offset<org::apache::arrow::flatbuf::Schema>*) [clone .constprop.548] () from /lib64/libarrow.so.13}} {{#4 0x00007f43fc880f7f in arrow::ipc::internal::WriteSchemaMessage(arrow::Schema const&, arrow::ipc::DictionaryMemo*, std::shared_ptr<arrow::Buffer>*) () from /lib64/libarrow.so.13}} {{#5 0x00007f43fc8986eb in arrow::ipc::RecordBatchStreamWriter::RecordBatchStreamWriterImpl::Start() () from /lib64/libarrow.so.13}} {{#6 0x00007f43fc898936 in arrow::ipc::RecordBatchFileWriter::RecordBatchFileWriterImpl::Start() () from /lib64/libarrow.so.13}} {{#7 0x00007f43fc891cfc in arrow::ipc::RecordBatchFileWriter::WriteRecordBatch(arrow::RecordBatch const&, bool) () from /lib64/libarrow.so.13}} {{#8 0x00000000004022ec in job () at repro.cpp:63}} {{#9 0x00000000004026e7 in main (argc=1, argv=0x7ffef5892268) at repro.cpp:77}} Thanks for your help. -- This message was sent by Atlassian JIRA (v7.6.3#76005)