Browse Source

Reset the queued count to allow more work to be queued for the new pool on pool switch.

Con Kolivas 14 years ago
parent
commit
0d8b8793b5
1 changed files with 5 additions and 0 deletions
  1. 5 0
      main.c

+ 5 - 0
main.c

@@ -271,6 +271,11 @@ static void switch_pools(void)
 	gettimeofday(&currentpool->tv_localgen, NULL);
 	gettimeofday(&currentpool->tv_localgen, NULL);
 	applog(LOG_WARNING, "Prolonged outage. Attempting to switch to %s", currentpool->rpc_url);
 	applog(LOG_WARNING, "Prolonged outage. Attempting to switch to %s", currentpool->rpc_url);
 	pthread_mutex_unlock(&control_lock);
 	pthread_mutex_unlock(&control_lock);
+
+	/* Reset the queued amount to allow more to be queued for the new pool */
+	pthread_mutex_lock(&qd_lock);
+	total_queued = 0;
+	pthread_mutex_unlock(&qd_lock);
 }
 }
 
 
 /* FIXME: Use asprintf for better errors. */
 /* FIXME: Use asprintf for better errors. */