Executions and Cost and Spending Limits
Learn about limits on the costs executions can incur, and how these limits can affect executions on the DNAnexus Platform.
Types of Cost and Spending Limits
A running execution can be terminated when it incurs charges that cause a cost or spending limit to be reached. When a spending limit is reached, this can also prevent new executions from being launched.
Execution Cost Limits
An execution cost limit is an optional limit on the usage charges an execution tree can incur. This limit is set when a root execution is launched. Once this limit is reached, the DNAnexus Platform will terminate running executions in the affected execution tree.
Errors
When an execution is terminated in this fashion, the Platform will set CostLimitExceeded as the failure reason. This failure code will be displayed on the UI, on the relevant project’s Monitor page.
Billing Account Spending Limits
Billing account spending limits are managed by billing administrators, and can impact executions in projects billed to the account.
Billing account spending limits apply to cumulative charges incurred by projects billed to the account.
If cumulative charges reach this limit, the Platform will terminate running jobs in projects billed to the account, and will prevent new executions from being launched.
Errors
When a job is terminated in this fashion, the Platform will set SpendingLimitExceeded as the failure reason. This failure reason will be displayed on the UI, on the relevant project’s Monitor page.
Project-Level Compute and Egress Spending Limits
A license is required to use the Enforce Monthly Spending Limit for Computing and Egress feature. Contact DNAnexus Sales for more information.
Monthly project compute spending limits can be set by project admins, and can impact executions run within the project. Project admins can also set a separate monthly project-level egress spending limit, which can impact data egress from the project.
If the compute spending limit is reached, the Platform may terminate running jobs launched by project members, and prevent new executions from being launched. If the egress spending limit is reached, the Platform may prevent data egress from the project. The exact behavior depends on the policies of the org to which the project is billed.
For more information on these limits, see this overview, and this detailed explanation of setting org spending limit policies.
Compute Charges Incurred by Using Relational Database Clusters
Monthly project compute limits do not apply to compute charges incurred by using relational database clusters.
Compute Charges for Using Public IPv4 Addresses for Workers
There is a charge for using public IPv4 addresses for workers used for compute. When a job uses such a worker, IPv4 charges are included in the total cost figure shown for the job on the UI. These charges also count toward any compute spending limit that applies to the project in which the job is running.
See this documentation for information on how to find the per-hour charge for using IPv4 addresses, in each cloud region in which org members can run executions.`
Getting Info on Cost and Spending Limits
Execution Costs and Cost Limits
The UI displays information on costs and cost limits for both individual executions and execution trees. Navigate to the project in which the execution or execution tree is being run, then click the Monitor tab. Click on the name of the execution or execution tree to open a page showing detailed information about it.
While an execution or execution tree is running, information will be displayed on the charges it has incurred so far, and on additional charges it can incur, before an applicable cost limit is reached.
Spending Limits
Org spending limit information is available from the Billing page for each org.
Project-Level Monthly Spending Limits
If project-level monthly spending limits have been set for a project, detailed information is available via the CLI, using the command dx describe project-id
.
Last updated