The debugger commands available for inspection of the program and symbol tables are:
- list (List) [<mod>.<fcn>['['<nr>']']]
- A listing of the current MAL block, or one designated by the <mod>.<fcn> is produced. The [<nr>] extension provides access to an element in the MAL block history. The alternative name 'List' also produces the type information.
- optimizer [<mod>.<fcn>['['<nr>']']]
- Gives an overview of the optimizer actions in the history of a SQL query. Intermediate results can be accessed using the list command.
- Lists the atoms currently known
- modules [<mod>]
- Lists the modules currently known. An optional <mod> argument produces a list of all signatures within the module identified.
- dot <mod>.<fcn>['['<nr>']'] [<file>]
- A dataflow diagram can be produced using the dot command. It expects a function identifier with an optional history index and produces a file for the Linux program dot, which can produce a nice, multi-page graph to illustrate plan complexity.
This example produces the user.main.dot in the current working directory. The program call
dot -Tpdf user-tst-0.dot -o user-tst-0.pdf
creates a PDF file with the graphs. The Linux pdfposter utility can be used to produce a proper printing. Alternatively, the Adobe reader professional can break it up into multiple pages.