[Xapian-tickets] [Xapian] #390: Implement LD_PRELOAD library to log IO for profiling

Xapian nobody at xapian.org
Mon May 15 06:34:17 BST 2023


#390: Implement LD_PRELOAD library to log IO for profiling
-----------------------------+----------------------------------
 Reporter:  Richard Boulton  |             Owner:  Tanmay Sachan
     Type:  enhancement      |            Status:  assigned
 Priority:  normal           |         Milestone:  2.0.0
Component:  Other            |           Version:
 Severity:  normal           |        Resolution:
 Keywords:                   |        Blocked By:
 Blocking:                   |  Operating System:  All
-----------------------------+----------------------------------
Comment (by Olly Betts):

 I've added a simple automated test for `xapian-io-profile` in
 54779bea85b25d84f61e35a30320699582ea5ef1 which checks that all the
 expected functions are intercepted and logged, and that 64-bit offsets
 work.

 Currently this passes on x86-64 Linux but fails on x86 Linux.  I'll work
 to fix it there and then I think we can close this.  Interested developers
 on other platforms can check if it works by running `make check` (and try
 to fix it if it doesn't!)

 Logging using `dtrace` is potentially interesting, but it's not packaged
 for Debian at least (maybe due to the CDDL licence?) so I'll also leave
 that for interested developers on other platforms.  On Linux we already
 have a choice of `strace or `xapian-io-profile`, and while `dtrace` (or
 the Linux-specific EBPF) is likely a lower overhead option the overhead
 shouldn't be a big concern with the events we're logging.
-- 
Ticket URL: <https://trac.xapian.org/ticket/390#comment:10>
Xapian <https://xapian.org/>
Xapian


More information about the Xapian-tickets mailing list