Software Outsourcing, Offshore Software Development, Offshore Outsourcing Services, IT Outsourcing, Offshore Development
MySQL manual Offshore Software Outsourcing and Programming, IT Outsourcing Offshore Software Development  
Call Us Today: 1-800-678-9001
Offshore Software Outsourcing and Programming, IT Outsourcing Offshore Software Development

Home / Technical Support / MySQL

Key Offerings:

B2B and B2C E-Business Solutions

Offshore Software Development Outsourcing

Strategic Consulting

Offshore Software Outsourcing

About ALTOROS: ALTOROS Systems is headquartered in Tampa, Florida and maintains an office near Boston, Massachusetts and technology development center in Belarus and Russia. ALTOROS specializes on providing value-added e-commerce and web-based software development and offshore software outsourcing services to emerging enterprises helping them successfully plan and implement business initiatives.

Contact Us for more information.

Node: The DBUG package, Next: Locking methods, Prev: Debugging client, Up: Porting
The DBUG Package
 
The MySQL server and most MySQL clients are compiled with the DBUG package originally made by Fred Fish.  When one has configured MySQL for debugging, this package makes it possible to get a trace file of what the program is debugging. See Making trace files.
 
One uses the debug package by invoking the program with the --debug="..." or the -#... option.
 
Most MySQL programs has a default debug string that will be used if you don't specify an option to --debug.  The default trace file is usually /tmp/programname.trace on Unix and \programname.trace on Windows.
 
The debug control string is a sequence of colon separated fields as follows:
 
<field_1>:<field_2>:...:<field_N>
 
Each field consists of a mandatory flag character followed by an optional "," and comma-separated list of modifiers:
 
flag[,modifier,modifier,...,modifier]
 
The currently recognised flag characters are:
 
Flag Description
d Enable output from DBUG_<N> macros for the current state. May be followed by a list of keywords which selects output only for the DBUG macros with that keyword. An empty list of keywords implies output for all macros.
D Delay after each debugger output line. The argument is the number of tenths of seconds to delay, subject to machine capabilities. That is, -#D,20 is delay two seconds.
f Limit debugging and/or tracing, and profiling to the list of named functions.  Note that a null list will disable all functions.      The appropriate "d" or "t" flags must still be given, this flag only limits their actions if they are enabled.
F Identify the source file name for each line of debug or trace output.
i Identify the process with the pid or thread id for each line of debug or trace output.
g Enable profiling.  Create a file called 'dbugmon.out' containing information that can be used to profile the program.  May be followed by a list of keywords that select profiling only for the functions in that list.  A null list implies that all functions are considered.
L Identify the source file line number for each line of debug or trace output.
n Print the current function nesting depth for each line of debug or trace output.
N Number each line of dbug output.
o Redirect the debugger output stream to the specified file.  The default output is stderr.
O As O but the file is really flushed between each write. When needed the file is closed and reopened between each write.
p Limit debugger actions to specified processes. A process must be identified with the DBUG_PROCESS macro and match one in the list for debugger actions to occur.
P Print the current process name for each line of debug or trace output.
r When pushing a new state, do not inherit the previous state's function nesting level. Useful when the output is to start at the left margin.
S Do function _sanity(_file_,_line_) at each debugged function until _sanity() returns something that differs from 0. (Mostly used with safemalloc to find memory leaks)
t Enable function call/exit trace lines. May be followed by a list (containing only one modifier) giving a numeric maximum trace level, beyond which no output will occur for either debugging or tracing macros.  The default is a compile time option.
Some examples of debug control strings which might appear on a shell command-line (the "-#" is typically used to introduce a control string to an application program) are:
 
-#d:t
-#d:f,main,subr1:F:L:t,20
-#d,input,output,files:n
-#d:t:i:O,\\mysqld.trace
 
In MySQL, common tags to print (with the d option) are: enter,exit,error,warning,info and loop.
 
Offshore Software Outsourcing company Russia Florida Massachusetts Boston Belarus, Offshore Software Development Services, Offshore Programming and IT OutsourcingOffshore Development, Programming  Services, Tampa FL Russia, E-commerce, Database, CRM, Financial Insurance Health Care Real EstateOffshore Software Development Services, Software Outsourcing Russia
HOME PAGE, Offshore Software Outsourcing Company, offshore IT outsourcing services, offshore 
software development Russia Massachusetts Florida New York CT VT RI software development