diff --git a/src/slurmctld/node_scheduler.c b/src/slurmctld/node_scheduler.c
index ac7fdf545b2cf7e17ed56ff9aeacd89f1b5ad3e5..a99386733f5961509e97344d35ea79a96a1d7138 100644
--- a/src/slurmctld/node_scheduler.c
+++ b/src/slurmctld/node_scheduler.c
@@ -2572,10 +2572,6 @@ extern int select_nodes(struct job_record *job_ptr, bool test_only,
 	if (select_g_job_begin(job_ptr) != SLURM_SUCCESS) {
 		/* Leave job queued, something is hosed */
 		error("select_g_job_begin(%u): %m", job_ptr->job_id);
-
-		/* Since we began the job earlier we have to cancel it */
-		(void) bb_g_job_cancel(job_ptr);
-
 		error_code = ESLURM_NODES_BUSY;
 		job_ptr->start_time = 0;
 		job_ptr->time_last_active = 0;
@@ -2595,10 +2591,6 @@ extern int select_nodes(struct job_record *job_ptr, bool test_only,
 		error("Select plugin failed to set job resources, nodes");
 		/* Do not attempt to allocate the select_bitmap nodes since
 		 * select plugin failed to set job resources */
-
-		/* Since we began the bb job earlier we have to cancel it */
-		(void) bb_g_job_cancel(job_ptr);
-
 		error_code = ESLURM_NODES_BUSY;
 		job_ptr->start_time = 0;
 		job_ptr->time_last_active = 0;
@@ -2618,11 +2610,6 @@ extern int select_nodes(struct job_record *job_ptr, bool test_only,
 		if (!job_ptr->job_resrcs) {
 			/* If we don't exit earlier the empty job_resrcs might
 			 * be dereferenced later */
-
-			/* Since we began the bb job earlier we have to cancel
-			 * it */
-			(void) bb_g_job_cancel(job_ptr);
-
 			error_code = ESLURM_NODES_BUSY;
 			job_ptr->start_time = 0;
 			job_ptr->time_last_active = 0;