kou commented on PR #36230: URL: https://github.com/apache/arrow/pull/36230#issuecomment-1603734668
> Can we find a way to do that on all debug CI builds (except if MSVC is used, probably)? We can detect whether on GitHub Actions or not by `GITHUB_ACTIONS=true`. So we can use `-g1` by default on GItHub Actions. But... we can't use `-g1` for GDB plugin tests... https://github.com/apache/arrow/actions/runs/5353229013/jobs/9708905231?pr=36230#step:6:6529 ```text _______________________________ test_arrays_heap _______________________________ gdb_arrow = <pyarrow.tests.test_gdb.GdbSession object at 0x7f460d9a1910> def test_arrays_heap(gdb_arrow): # Null > check_heap_repr( gdb_arrow, "heap_null_array", "arrow::NullArray of length 2, offset 0, null count 2") opt/conda/envs/arrow/lib/python3.9/site-packages/pyarrow/tests/test_gdb.py:770: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ gdb = <pyarrow.tests.test_gdb.GdbSession object at 0x7f460d9a1910> expr = 'heap_null_array' expected = 'arrow::NullArray of length 2, offset 0, null count 2' def check_heap_repr(gdb, expr, expected): """ Check printing a heap-located value, given its address. """ s = gdb.print_value(f"*{expr}") # GDB may prefix the value with an address or type specification if s != expected: > assert s.endswith(f" {expected}") E AssertionError: assert False E + where False = <built-in method endswith of str object at 0x55e0685ce330>(' arrow::NullArray of length 2, offset 0, null count 2') E + where <built-in method endswith of str object at 0x55e0685ce330> = '(std::__shared_ptr_access<arrow::Array, (__gnu_cxx::_Lock_policy)2, false, false>::element_type &) @0x55d33eb43a70: {...ields>}, _M_ptr = 0x55d33eb54bc0, _M_refcount = {_M_pi = 0x55d33eb54bb0}}, <No data fields>}, null_bitmap_data_ = 0x0}'.endswith opt/conda/envs/arrow/lib/python3.9/site-packages/pyarrow/tests/test_gdb.py:245: AssertionError ----------------------------- Captured stdout call ----------------------------- p *heap_null_array $36 = (std::__shared_ptr_access<arrow::Array, (__gnu_cxx::_Lock_policy)2, false, false>::element_type &) @0x55d33eb43a70: {_vptr.Array = 0x7fa4501a6ff8 <vtable for arrow::NullArray+16>, data_ = {<std::__shared_ptr<arrow::ArrayData, (__gnu_cxx::_Lock_policy)2>> = {<std::__shared_ptr_access<arrow::ArrayData, (__gnu_cxx::_Lock_policy)2, false, false>> = {<No data fields>}, _M_ptr = 0x55d33eb54bc0, _M_refcount = {_M_pi = 0x55d33eb54bb0}}, <No data fields>}, null_bitmap_data_ = 0x0} (gdb) ----------------------------- Captured stderr call ----------------------------- Python Exception <class 'gdb.error'>: There is no member named id_. ``` Hmm. We may need to use `-g1` only for bundled dependencies... -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
