Scroll to navigation

CONDOR_DAG_CHECKER(1) HTCondor Manual CONDOR_DAG_CHECKER(1)

NAME

condor_dag_checker - HTCondor Manual

Process provided DAG file(s) for syntactical and logical issues.

SYNOPSIS

condor_dag_checker [-help]

condor_dag_checker [OPTIONS] DAG_File [DAG_File ...]

condor_dag_checker [-AllowIllegalChars] [-UseDagDir] [-[No]JoinNodes] [-json | -Statistics]

DESCRIPTION

Process provided DAG file(s) for any issues that would prevent the creation and execution of a DAG. Issues include, but are not limited to, incorrect DAG command syntax, referencing undefined nodes, and cyclic dependencies.

OPTIONS

Allow use of illegal characters in node names.
-[No]JoinNodes
Enable/Disable use of join nodes in produced DAG. Enabled by default.
Switch into the DAG file's directory prior to parsing.
Print results into JSON format.
Print statistics about the parsed DAG.



GENERAL REMARKS

This tool does not currently verify the existence files specified for various DAG components (i.e. scripts and node submit descriptions).

This tool does not process internal DAG files specified via the SUBDAG <href="../automated-workflows/dagman-reference.html#SUBDAG"> command as they can be dynamically generated. To verify both the root DAG file and any SubDAG files, simply specify all DAG files on the command line:

$ condor_dag_checker root.dag sub-dag1.dag sub-dag2.dag sub-sub-dag.dag


This tool will process files specified by the INCLUDE <href="../automated-workflows/dagman-reference.html#INCLUDE"> and SPLICE <href="../automated-workflows/dagman-reference.html#SPLICE"> commands.

EXIT STATUS

0 - Success (No issues detected in DAG files(s))

1 - Failure (Issue detected with DAG file(s))

2 - Tool execution failure

EXAMPLES

Example checking DAG file diamond.dag for issues:

$ condor_dag_checker diamond.dag


Example getting statistics about DAG file diamond.dag:

$ condor_dag_checker -statistics diamond.dag


Example getting JSON formatted information about DAG file diamond.dag:

$ condor_dag_checker -json diamond.dag


Example checking multiple DAG files for issues:

$ condor_dag_checker first.dag second.dag third.dag


Example use DAG file directories during processing:

$ condor_dag_checker -usedagdir subdir1/simple.dag subdir2/simple.dag


Example comparing DAG file with and without join nodes:

$ condor_dag_checker -stat -JoinNodes
$ condor_dag_checker -stat -NoJoinNodes


SEE ALSO

None

AVAILABILITY

Linux, MacOS, Windows

Introduced in v24.10.1 of HTCondor

Author

HTCondor Team

Copyright

1990-2026, Center for High Throughput Computing, Computer Sciences Department, University of Wisconsin-Madison, Madison, WI, US. Licensed under the Apache License, Version 2.0.

February 25, 2026