diff --git a/src/plugins/select/bluegene/bg_job_place.c b/src/plugins/select/bluegene/bg_job_place.c
index 7e86517b5947fec25ebe74e47495eba4a7685145..4ec1d90538595312818e5bc5849d75bdcfdcfc16 100644
--- a/src/plugins/select/bluegene/bg_job_place.c
+++ b/src/plugins/select/bluegene/bg_job_place.c
@@ -539,6 +539,8 @@ static bg_record_t *_find_matching_block(List block_list,
 			continue;
 
 		if (bg_conf->sub_blocks && bg_record->mp_count == 1) {
+			select_jobinfo_t tmp_jobinfo, *jobinfo =
+				job_ptr->select_jobinfo->data;
 			bitstr_t *total_bitmap;
 			bool need_free = false;
 			ba_mp_t *ba_mp = list_peek(bg_record->ba_mp_list);
@@ -557,10 +559,9 @@ static bg_record_t *_find_matching_block(List block_list,
 				need_free = true;
 			} else
 				total_bitmap = ba_mp->cnode_bitmap;
-
+			memcpy(&tmp_jobinfo, jobinfo, sizeof(select_jobinfo_t));
 			if (!ba_sub_block_in_bitmap(
-				    job_ptr->select_jobinfo->data,
-				    total_bitmap, 0)) {
+				    &tmp_jobinfo, total_bitmap, 0)) {
 				if (need_free)
 					FREE_NULL_BITMAP(total_bitmap);
 				if (bg_conf->slurm_debug_flags
@@ -576,6 +577,30 @@ static bg_record_t *_find_matching_block(List block_list,
 
 			if (need_free)
 				FREE_NULL_BITMAP(total_bitmap);
+			/* Clear up what we just found if not running now. */
+			if (SELECT_IS_MODE_RUN_NOW(query_mode)) {
+				jobinfo->cnode_cnt = tmp_jobinfo.cnode_cnt;
+				jobinfo->dim_cnt = tmp_jobinfo.dim_cnt;
+
+				jobinfo->units_avail = tmp_jobinfo.units_avail;
+				tmp_jobinfo.units_avail = NULL;
+				jobinfo->units_used = tmp_jobinfo.units_used;
+				tmp_jobinfo.units_used = NULL;
+
+				jobinfo->ionode_str = tmp_jobinfo.ionode_str;
+				tmp_jobinfo.ionode_str = NULL;
+
+				memcpy(jobinfo->geometry, tmp_jobinfo.geometry,
+				       sizeof(jobinfo->geometry));
+				memcpy(jobinfo->start_loc,
+				       tmp_jobinfo.start_loc,
+				       sizeof(jobinfo->start_loc));
+
+			}
+
+			FREE_NULL_BITMAP(tmp_jobinfo.units_avail);
+			FREE_NULL_BITMAP(tmp_jobinfo.units_used);
+			xfree(tmp_jobinfo.ionode_str);
 		}
 
 		if (bg_conf->slurm_debug_flags & DEBUG_FLAG_BG_PICK)