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]

Reply via email to