source: trunk/third/oaf/docs/debugging.txt @ 15503

Revision 15503, 969 bytes checked in by ghudson, 24 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r15502, which included commits to RCS files with non-trunk default branches.
Line 
1
2Oaf debugging advice, version 0.1
3
4
5Since it is not transparently obvious how to debug oaf the following
6suggestions may be of use.
7
8
9* Attach the debugger.
10
11        It is not possible to run oaf in the debugger, instead you
12must activate oaf by doing a valid query; then attach the debugger
13to the process;
14
15        This might be done like this;
16
17        make install       # this installs oaf where it can be run
18        killall -9 oafd    # asasinate any stale oafd
19
20        oaf-run-query "repo_ids.has('foo')" # fire up a lurking oafd.
21
22        ps -ax | grep oafd # get the <pid> of oafd
23        libtool gdb ./oafd # start gdb on oafd
24        attach <pid>       # attach to the pid of the oaf daemon.
25
26
27* OAF_BARRIER_INIT
28
29        Set this environment variable to 1. Anything using OAF will
30then hang in `oaf_init'. You can then attach to the process and
31execute the gdb command
32
33        p barrier=0
34
35After which you can set breakpoints to taste, or single-step. This is
36really useful for debugging the initial startup of oafd.
37
38
Note: See TracBrowser for help on using the repository browser.