diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c
index 1db1391a4b9f196cc63c2b23ba4f045b3114783c..a19739dca1306cefdcd5485df3deb0fe66d48687 100644
--- a/src/bin/psql/common.c
+++ b/src/bin/psql/common.c
@@ -3,7 +3,7 @@
  *
  * Copyright (c) 2000-2007, PostgreSQL Global Development Group
  *
- * $PostgreSQL: pgsql/src/bin/psql/common.c,v 1.134 2007/04/16 20:15:38 mha Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/common.c,v 1.135 2007/06/22 01:09:28 neilc Exp $
  */
 #include "postgres_fe.h"
 #include "common.h"
@@ -1076,6 +1076,12 @@ ExecQueryUsingCursor(const char *query, double *elapsed_msec)
 
 		printQuery(results, &my_popt, pset.queryFout, pset.logfile);
 
+		/*
+		 * Make sure to flush the output stream, so intermediate
+		 * results are visible to the client immediately.
+		 */
+		fflush(pset.queryFout);
+
 		/* after the first result set, disallow header decoration */
 		my_popt.topt.start_table = false;
 		my_popt.topt.prior_records += ntuples;