Set the debug granularity.

The debug granularity can be set to "commits", "files" or "lines". If several files have been committed in one commit then PinDown can point out the sub-set of files or lines within a commit that is causing the failure, provided that the debug granularity is set to "files" or "lines" respectively. If the debug granularity is set to "commits" then PinDown will only point to the commit and not try to debug within the change set of the commit. Default, the debug granularity is set to "commits".

The finer debug granularity the more time it takes to debug. However the first bug report that is issued is always pointing out the bad commit and this bug report is not delayed if the selected granularity is "files" or "lines". The finer granularity will be updated in a sub-sequent report, e.g. the full report at the end of the run or the same bug report in sub-sequent runs (if the bug is still open).

The option -limit may be set to specify how many combinations of files or lines that should be tested before giving up. Default it is set to 9. If the debug bandwidth is set to 10 and this limit is set to 9 then PinDown will try 9 different sub-set of files in one iteration and then give up trying to find a sub-set unless one of these 9 sub-set of file changes actually made the test pass. The first attempt to validate one complete commit consumes one slot and consequently the other 9 slots (when the debug bandwidth is set to 10) is used to find a sub-set of the commit that still passes on the tipping pointcan. Having 9 as the default value means no extra debug iteration if there is no success in any of these 9 attempts in narrowing down the error to a sub-set.

This limit has no effect if "commits_" is selected as granularity.

Syntax

set_debug_granularity "granularity" [-limit "number"];

granularity

Sets the debug granularity to "commits", "files" or "lines"

‑limit

Set the max number of sub-set of files to test before giving up, unless one of the tests pass

Examples

Example 1

Set the debug granularity to files. The default limit of 9 applies.

set_debug_granularity "files".

Example 2

Set the debug granularity to lines. The default limit of 9 applies.

set_debug_granularity "lines".

Example 3

Set the debug granularity to "commits". Not actually necessary to do as this is the default value anyway.

set_debug_granularity "commits";

Example 4

Set the debug granularity to files, and specify a limit of 20 so that PinDown tries hard before giving up trying to find a sub-set

set_debug_granularity "files" -limit "20";