Documentation Source Text

Check-in [61444ae7e4]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Add a note about the ".breakpoint" shell command to the "debugging.html" page.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 61444ae7e438ac7a53806f6cf447acdd4755860e187911133afaba7994bef8c5
User & Date: drh 2019-03-23 16:09:01.211
Context
2019-03-25
14:30
Fix a documentation error: The preprocessor macro is SQLITE_HAVE_ZLIB, not SQLITE_USE_ZLIB. However the USE_ZLIB=1 option is what Makefile.msc expects. (check-in: 85f5f65d9f user: drh tags: trunk)
2019-03-23
16:09
Add a note about the ".breakpoint" shell command to the "debugging.html" page. (check-in: 61444ae7e4 user: drh tags: trunk)
2019-03-22
15:04
Improvements to the debugging.html webpage. (check-in: ad08afecb8 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/debugging.in.
100
101
102
103
104
105
106













107
108
109
110
111
112
113
SELECT statements and WHERE clauses, respectively.
The ".selecttrace" and ".wheretrace" commands each take a numeric
argument which can be expressed in hexadecimal.  Each bit turns on
various parts of debugging.  Values of "0xfff" and "0xff" are commonly
used.  Use an argument of "0" to turn all tracing output back off.
</li>














<li>
<p><b>Disable the [lookaside memory allocator]</b>

<p>When looking for memory allocation problems (memory leaks, use-after-free
errors, buffer overflows, etc) it is sometimes useful to disable the
[lookaside memory allocator] then run the test under valgrind or MSAN or
some other heap memory debugging tool.







>
>
>
>
>
>
>
>
>
>
>
>
>







100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
SELECT statements and WHERE clauses, respectively.
The ".selecttrace" and ".wheretrace" commands each take a numeric
argument which can be expressed in hexadecimal.  Each bit turns on
various parts of debugging.  Values of "0xfff" and "0xff" are commonly
used.  Use an argument of "0" to turn all tracing output back off.
</li>

<li>
<p><b>Using the ".breakpoint" shell command</b>

<p>The ".breakpoint" command in the CLI does nothing but invoke the
procedure named "test_breakpoint()", which is a no-op.

<p>If you have a script and you want to start debugging at some point
half-way through that script, simply set a breakpoing in gdb (or whatever
debugger you are using) on the test_breakpoint() function, and add a
".breakpoint" command where you want to stop.  When you reach that first
breakpoint, set whatever additional breakpoints are variable traces you
need.

<li>
<p><b>Disable the [lookaside memory allocator]</b>

<p>When looking for memory allocation problems (memory leaks, use-after-free
errors, buffer overflows, etc) it is sometimes useful to disable the
[lookaside memory allocator] then run the test under valgrind or MSAN or
some other heap memory debugging tool.