diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c
index 9eaa192239..e2093cdaca 100644
--- a/src/bin/pgbench/pgbench.c
+++ b/src/bin/pgbench/pgbench.c
@@ -5762,6 +5762,10 @@ threadRun(void *arg)
 			}
 		}
 
+		/* under throttling we may have finished the last client above */
+		if (remains == 0)
+			break;
+
 		/* also wake up to print the next progress report on time */
 		if (progress && min_usec > 0 && thread->tid == 0)
 		{
