Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-12735

[C++][Dev] Write gdb plugin

Details

    Description

      One common issue when using gdb with Arrow is that it's non-trivial to explore and display Arrow data and metadata using built-in gdb functionality. One usually needs lots of hand typing of expressions.

      One way to alleviate this would be to write a gdb plugin giving a higher-level view of Arrow C++ objects. This should be possible using the gdb Python API (though not trivial):
      https://sourceware.org/gdb/current/onlinedocs/gdb/Python.html#Python

      A simple example:
      https://github.com/nlohmann/json/tree/develop/third_party/gdb_pretty_printer

      A sophisticated example of this is the gdb plugin for Python itself:
      https://github.com/python/cpython/blob/main/Tools/gdb/libpython.py

      Related:
      https://interrupt.memfault.com/blog/gdbundle-plugin-manager
      https://github.com/memfault/gdbundle

      Attachments

        Issue Links

          Activity

            People

              apitrou Antoine Pitrou
              apitrou Antoine Pitrou
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 50m
                  1h 50m

                  Slack

                    Issue deployment