Scroll to navigation

CONDOR_DAGMAN(1) HTCondor Manual CONDOR_DAGMAN(1)

NAME

condor_dagman - HTCondor Manual

Node scheduler for automating HTCondor job workflows.

SYNOPSIS

condor_dagman [-help | -version]

condor_dagman -p 0 -f -l . [OPTIONS] DAG_file [DAG_file...]

condor_dagman -p 0 -f -l . [-WaitForDebug] [-CsdVersion VersionString] [-AllowVersionMismatch] [-Batch-Name name] [-Dag DAG_file] [-Debug level] [-Dot] [-DryRun] [-Lockfile filename] [-Priority priority] [-SubmitMethod value] [-UseDagDir] [-AlwaysRunPost | -DontAlwaysRunPost] [-suppress_notification | -dont_suppress_notification] [-AutoRescue <0|1>] [-DoRescueFrom N] [-DoRecovery] [-RescueFile filename] [-load_save filename] [-MaxHold N] [-MaxIdle N] [-MaxJobs N] [-MaxPost N] [-MaxPre N]

DESCRIPTION

A meta node scheduler that automatically manages HTCondor user workflows that describe jobs as nodes in a Directed Acyclic Graph (DAG). All parts of the DAG (nodes, dependencies, visualizations, etc) are described in a DAG Description File (*.dag) using the DAG Description Language (DDL).

OPTIONS

Display usage information.
Display version information.
Pause execution of DAGMan until debugger is attached.

Note:

Requires manual setting of wait_for_debug variable to false to continue execution.


Version of condor_submit_dag <href="../man-pages/condor_submit_dag.html"> that produced the scheduler universe job representing this DAGMan instance.
Allow a version difference between condor_dagman itself and the *.condor.sub file produced by condor_submit_dag <href="../man-pages/condor_submit_dag.html">.

Warning:

This option should only be used if absolutely necessary because version mismatches can cause subtle problems when running DAGMan.


Set the JobBatchName <href="../classad-attributes/job-classad-attributes.html#JobBatchName"> to name for all jobs placed to the AP by condor_dagman.
Specify a file detailing a DAG structure for condor_dagman for manage.
Set the debug log level (see below).
Exit immediately after producing the first DAG visual DOT <href="../automated-workflows/dagman-reference.html#DOT"> file.
Inform condor_dagman to execute the DAG without actually placing any jobs to the AP.
Path to a file to write condor_dagman process information. This prevents other condor_dagman executing the same DAG(s) from being executed in the same directory.
Set the minimum JobPrio <href="../classad-attributes/job-classad-attributes.html#JobPrio"> for jobs managed by condor_dagman.
Specify how condor_dagman will place managed jobs to the AP.
Inform condor_dagman to execute each specified DAG from their respective directories.
Always execute POST scripts even upon failure of any PRE scripts.
Only execute POST scripts after a node's list of jobs have completed (Success or Failure). Default.
Suppress email notifications for all managed jobs.
Allow email notifications for any managed jobs that have notifications specified. Default.
Automatically detect rescue DAG files upon startup and rescue from the most recent (highest number) rescue file discovered. 0 is False. Default 1 is True.
Specify a specific rescue number to locate and restore state from.
Specify a specific rescue file by name to restore state from.
Specify to startup in recovery mode (restore state from *.nodes.log).
Specify a specific SAVE_POINT_FILE <href="../automated-workflows/dagman-reference.html#SAVE_POINT_FILE"> to restore state from.
Set the maximum number of idle jobs allowed before placing more jobs to the AP. If not specified then this is set to the value of DAGMAN_MAX_JOBS_IDLE <href="../admin-manual/configuration/dagman.html#DAGMAN_MAX_JOBS_IDLE">.

Note:

condor_dagman can place jobs beyond this threshold in a single job placement cycle, but won't place more jobs until the detected number of idle jobs drops below the specified threshold again.


Set the maximum number of nodes that have placed a list of jobs to the AP at any given moment. If not specified then this is set to the value of DAGMAN_MAX_JOBS_SUBMITTED <href="../admin-manual/configuration/dagman.html#DAGMAN_MAX_JOBS_SUBMITTED">.
Set the maximum number of PRE scripts being executed at any given moment. If not specified then this value is set to DAGMAN_MAX_PRE_SCRIPTS <href="../admin-manual/configuration/dagman.html#DAGMAN_MAX_PRE_SCRIPTS">.
Set the maximum number of POST scripts being executed at any given moment. If not specified then this value is set to DAGMAN_MAX_POST_SCRIPTS <href="../admin-manual/configuration/dagman.html#DAGMAN_MAX_POST_SCRIPTS">.
Set the maximum number of HOLD scripts being executed at any given moment. If not specified then this value is set to DAGMAN_MAX_HOLD_SCRIPTS <href="../admin-manual/configuration/dagman.html#DAGMAN_MAX_HOLD_SCRIPTS">.



GENERAL REMARKS

condor_dagman is not intended to be ran manually unless to debug or test DAGMan for a specific reason. Instead to execute a DAG place a meta scheduler universe job to the local AP via condor_submit_dag <href="../man-pages/condor_submit_dag.html"> or htcondor dag submit <href="../man-pages/htcondor.html#dag-verbs">.

The following options that appear first are for DaemonCore:

  • -p 0 : Causes DAGMan to run without a Socket.
  • -f : Run in foreground (i.e. not spawned by condor_master).
  • -l . : Sets the debug log directory to the execution directory.



The following options from condor_submit_dag <href="../man-pages/condor_submit_dag.html"> can also be provided to condor_dagman which will be used for submitting SUBDAG <href="../automated-workflows/dagman-reference.html#SUBDAG">'s:

  • -dagman
  • -f/-force
  • -import_env
  • -include_env Var1[,Var2...]
  • -insert_env key=value[,key=value...]
  • -notification
  • -outfile_dir
  • -update_submit
  • -v/-verbose



Debug Level Values

level Details
0 Never produce output except for usage info.
1 Very quiet. Only output severe errors.
2 Normal output and error messages
3 (Default) Print warnings.
4 Internal debugging output.
5 Outer loop debugging.
6 Inner loop debugging.
7 Output parsed DAG input lines.

Submit Method Values

Value Method
0 Run condor_submit <href="../man-pages/condor_submit.html">
1 Direct place job(s) to local condor_schedd

EXIT STATUS

0 - Success

1 - Failure has occurred

2 - DAGMan aborted

3 - DAGMan restart

EXAMPLES

Display installed condor_dagman version:

$ condor_dagman -version


Display condor_dagman usage:

$ condor_dagman -help


Manually run sample.dag:

$ condor_dagman -p 0 -f -l . sample.dag


Execute condor_dagman in a debugger:

$ condor_dagman -p 0 -f -l . -waitfordebug -dag sample.dag


SEE ALSO

condor_submit_dag <href="../man-pages/condor_submit_dag.html">

AVAILABILITY

Linux, MacOS, Windows

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.

June 17, 2026