diff --git a/src/plugins/select/bluegene/plugin/bg_block_info.c b/src/plugins/select/bluegene/plugin/bg_block_info.c
index 28c091cd12569e50f67fe0bb336870e7caadfb6e..9a819591202124c273a76e3b8219cc47144b231d 100644
--- a/src/plugins/select/bluegene/plugin/bg_block_info.c
+++ b/src/plugins/select/bluegene/plugin/bg_block_info.c
@@ -466,9 +466,12 @@ extern int update_block_list()
 				
 				if(update_block_user(bg_record, 0) == 1)
 					last_bg_update = time(NULL);
-				if(bg_record->job_ptr)
+				if(bg_record->job_ptr) {
 					bg_record->job_ptr->job_state |=
 						JOB_CONFIGURING;
+					last_job_update = time(NULL);
+
+				}
 				break;
 			case RM_PARTITION_ERROR:
 				/* If we get an error on boot that
@@ -530,9 +533,12 @@ extern int update_block_list()
 			case RM_PARTITION_READY:
 				debug("block %s is ready.",
 				      bg_record->bg_block_id);
-				if(bg_record->job_ptr)
+				if(bg_record->job_ptr) {
 					bg_record->job_ptr->job_state &=
 						(~JOB_CONFIGURING);
+					last_job_update = time(NULL);
+				}
+
 				if(set_block_user(bg_record) == SLURM_ERROR) {
 					freeit = xmalloc(
 						sizeof(kill_job_struct_t));
diff --git a/src/plugins/select/bluegene/plugin/bg_job_run.c b/src/plugins/select/bluegene/plugin/bg_job_run.c
index 7c644dee288fb7f68559ebc8fb43fec5cd5cacd2..7f629ae0c31501e81e0a69cdf2ac8965c79c1b8c 100644
--- a/src/plugins/select/bluegene/plugin/bg_job_run.c
+++ b/src/plugins/select/bluegene/plugin/bg_job_run.c
@@ -1344,6 +1344,7 @@ extern int sync_jobs(List job_list)
 				job_ptr->job_state = JOB_FAILED 
 					| JOB_COMPLETING;
 				job_ptr->end_time = time(NULL);
+				last_job_update = time(NULL);
 				_bg_list_del(bg_update_ptr);
 				continue;
 			}
@@ -1437,8 +1438,10 @@ extern int boot_block(bg_record_t *bg_record)
 	if(bg_record->state != RM_PARTITION_CONFIGURING)
 		bg_record->state = RM_PARTITION_CONFIGURING;
 	debug("Setting bootflag for %s", bg_record->bg_block_id);
-	if(bg_record->job_ptr)
+	if(bg_record->job_ptr) {
 		bg_record->job_ptr->job_state |= JOB_CONFIGURING;
+		last_job_update = time(NULL);
+	}
 	bg_record->boot_state = 1;
 	//bg_record->boot_count = 0;
 	last_bg_update = time(NULL);
diff --git a/src/plugins/select/bluegene/plugin/select_bluegene.c b/src/plugins/select/bluegene/plugin/select_bluegene.c
index dc53fa996afee8d99c2a92b9c4dc929df8721a6d..f1b49d578ae52be3181a7f5cfe38b715e5c274cf 100644
--- a/src/plugins/select/bluegene/plugin/select_bluegene.c
+++ b/src/plugins/select/bluegene/plugin/select_bluegene.c
@@ -58,6 +58,7 @@ int bg_recover = NOT_FROM_CONTROLLER;
 List part_list = NULL;	
 int node_record_count;
 time_t last_node_update;
+time_t last_job_update;
 char *alpha_num = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 void *acct_db_conn = NULL;
 char *slurmctld_cluster_name = NULL;