[ https://issues.apache.org/jira/browse/ARROW-10193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Krisztian Szucs updated ARROW-10193: ------------------------------------ Description: Reproducer: {code:python} data = [b'\x19h\r\x9e\x00\x00\x00\x00\x01\x9b\x9fA'] assert len(data[0]) == 12 ty = pa.binary(12) arr = pa.array(data, type=ty) {code} Trace: {code} pyarrow/tests/test_convert_builtin.py::test_fixed_size_binary_length_check ../src/arrow/array/builder_binary.cc:53: Check failed: (size) == (byte_width_) Appending wrong size to FixedSizeBinaryBuilder 0 libarrow.200.0.0.dylib 0x000000010e7f9704 _ZN5arrow4util7CerrLog14PrintBackTraceEv + 52 1 libarrow.200.0.0.dylib 0x000000010e7f9622 _ZN5arrow4util7CerrLogD2Ev + 98 2 libarrow.200.0.0.dylib 0x000000010e7f9585 _ZN5arrow4util7CerrLogD1Ev + 21 3 libarrow.200.0.0.dylib 0x000000010e7f95ac _ZN5arrow4util7CerrLogD0Ev + 28 4 libarrow.200.0.0.dylib 0x000000010e7f9492 _ZN5arrow4util8ArrowLogD2Ev + 82 5 libarrow.200.0.0.dylib 0x000000010e7f94c5 _ZN5arrow4util8ArrowLogD1Ev + 21 6 libarrow.200.0.0.dylib 0x000000010e303ec1 _ZN5arrow22FixedSizeBinaryBuilder14CheckValueSizeEx + 209 7 libarrow.200.0.0.dylib 0x000000010e30c361 _ZN5arrow22FixedSizeBinaryBuilder12UnsafeAppendEN6nonstd7sv_lite17basic_string_viewIcNSt3__111char_traitsIcEEEE + 49 8 libarrow_python.200.0.0.dylib 0x000000010b4efa7d _ZN5arrow2py20PyPrimitiveConverterINS_19FixedSizeBinaryTypeEvE6AppendEP7_object + 813 {code} The input {{const char*}} value gets implicitly casted to string_view which makes the length check fail in debug builds. was: Reproducer: {code:python} data = [b'\x19h\r\x9e\x00\x00\x00\x00\x01\x9b\x9fA'] assert len(data[0]) == 12 ty = pa.binary(12) arr = pa.array(data, type=ty) {code} Trace: {code} pyarrow/tests/test_convert_builtin.py::test_fixed_size_binary_length_check ../src/arrow/array/builder_binary.cc:53: Check failed: (size) == (byte_width_) Appending wrong size to FixedSizeBinaryBuilder 0 libarrow.200.0.0.dylib 0x000000010e7f9704 _ZN5arrow4util7CerrLog14PrintBackTraceEv + 52 1 libarrow.200.0.0.dylib 0x000000010e7f9622 _ZN5arrow4util7CerrLogD2Ev + 98 2 libarrow.200.0.0.dylib 0x000000010e7f9585 _ZN5arrow4util7CerrLogD1Ev + 21 3 libarrow.200.0.0.dylib 0x000000010e7f95ac _ZN5arrow4util7CerrLogD0Ev + 28 4 libarrow.200.0.0.dylib 0x000000010e7f9492 _ZN5arrow4util8ArrowLogD2Ev + 82 5 libarrow.200.0.0.dylib 0x000000010e7f94c5 _ZN5arrow4util8ArrowLogD1Ev + 21 6 libarrow.200.0.0.dylib 0x000000010e303ec1 _ZN5arrow22FixedSizeBinaryBuilder14CheckValueSizeEx + 209 7 libarrow.200.0.0.dylib 0x000000010e30c361 _ZN5arrow22FixedSizeBinaryBuilder12UnsafeAppendEN6nonstd7sv_lite17basic_string_viewIcNSt3__111char_traitsIcEEEE + 49 8 libarrow_python.200.0.0.dylib 0x000000010b4efa7d _ZN5arrow2py20PyPrimitiveConverterINS_19FixedSizeBinaryTypeEvE6AppendEP7_object + 813 {code} The input {{const char*}} value gets implicitly casted to string_view which makes the length check fail in debug builds. > [Python] Segfault when converting to fixed size binary array > ------------------------------------------------------------ > > Key: ARROW-10193 > URL: https://issues.apache.org/jira/browse/ARROW-10193 > Project: Apache Arrow > Issue Type: Bug > Components: Python > Reporter: Krisztian Szucs > Assignee: Krisztian Szucs > Priority: Major > Fix For: 2.0.0 > > > Reproducer: > {code:python} > data = [b'\x19h\r\x9e\x00\x00\x00\x00\x01\x9b\x9fA'] > assert len(data[0]) == 12 > ty = pa.binary(12) > arr = pa.array(data, type=ty) > {code} > Trace: > {code} > pyarrow/tests/test_convert_builtin.py::test_fixed_size_binary_length_check > ../src/arrow/array/builder_binary.cc:53: Check failed: (size) == > (byte_width_) Appending wrong size to FixedSizeBinaryBuilder > 0 libarrow.200.0.0.dylib 0x000000010e7f9704 > _ZN5arrow4util7CerrLog14PrintBackTraceEv + 52 > 1 libarrow.200.0.0.dylib 0x000000010e7f9622 > _ZN5arrow4util7CerrLogD2Ev + 98 > 2 libarrow.200.0.0.dylib 0x000000010e7f9585 > _ZN5arrow4util7CerrLogD1Ev + 21 > 3 libarrow.200.0.0.dylib 0x000000010e7f95ac > _ZN5arrow4util7CerrLogD0Ev + 28 > 4 libarrow.200.0.0.dylib 0x000000010e7f9492 > _ZN5arrow4util8ArrowLogD2Ev + 82 > 5 libarrow.200.0.0.dylib 0x000000010e7f94c5 > _ZN5arrow4util8ArrowLogD1Ev + 21 > 6 libarrow.200.0.0.dylib 0x000000010e303ec1 > _ZN5arrow22FixedSizeBinaryBuilder14CheckValueSizeEx + 209 > 7 libarrow.200.0.0.dylib 0x000000010e30c361 > _ZN5arrow22FixedSizeBinaryBuilder12UnsafeAppendEN6nonstd7sv_lite17basic_string_viewIcNSt3__111char_traitsIcEEEE > + 49 > 8 libarrow_python.200.0.0.dylib 0x000000010b4efa7d > _ZN5arrow2py20PyPrimitiveConverterINS_19FixedSizeBinaryTypeEvE6AppendEP7_object > + 813 > {code} > The input {{const char*}} value gets implicitly casted to string_view which > makes the length check fail in debug builds. -- This message was sent by Atlassian Jira (v8.3.4#803005)