@@ -57,14 +57,12 @@ static void prepare_vacuum_command(PQExpBuffer sql, PGconn *conn,
57
57
vacuumingOptions * vacopts , const char * table );
58
58
59
59
static void run_vacuum_command (PGconn * conn , const char * sql , bool echo ,
60
- const char * dbname , const char * table ,
61
- const char * progname , bool async );
60
+ const char * table , const char * progname , bool async );
62
61
63
62
static ParallelSlot * GetIdleSlot (ParallelSlot slots [], int numslots ,
64
- const char * dbname , const char * progname );
63
+ const char * progname );
65
64
66
- static bool GetQueryResult (PGconn * conn , const char * dbname ,
67
- const char * progname );
65
+ static bool GetQueryResult (PGconn * conn , const char * progname );
68
66
69
67
static void DisconnectDatabase (ParallelSlot * slot );
70
68
@@ -355,19 +353,20 @@ vacuum_one_database(const char *dbname, vacuumingOptions *vacopts,
355
353
Assert (stage == ANALYZE_NO_STAGE ||
356
354
(stage >= 0 && stage < ANALYZE_NUM_STAGES ));
357
355
356
+ conn = connectDatabase (dbname , host , port , username , prompt_password ,
357
+ progname , false, true);
358
+
358
359
if (!quiet )
359
360
{
360
361
if (stage != ANALYZE_NO_STAGE )
361
- printf (_ ("%s: processing database \"%s\": %s\n" ), progname , dbname ,
362
- stage_messages [stage ]);
362
+ printf (_ ("%s: processing database \"%s\": %s\n" ),
363
+ progname , PQdb ( conn ), stage_messages [stage ]);
363
364
else
364
- printf (_ ("%s: vacuuming database \"%s\"\n" ), progname , dbname );
365
+ printf (_ ("%s: vacuuming database \"%s\"\n" ),
366
+ progname , PQdb (conn ));
365
367
fflush (stdout );
366
368
}
367
369
368
- conn = connectDatabase (dbname , host , port , username , prompt_password ,
369
- progname , false, true);
370
-
371
370
initPQExpBuffer (& sql );
372
371
373
372
/*
@@ -473,7 +472,7 @@ vacuum_one_database(const char *dbname, vacuumingOptions *vacopts,
473
472
* Get a free slot, waiting until one becomes free if none
474
473
* currently is.
475
474
*/
476
- free_slot = GetIdleSlot (slots , concurrentCons , dbname , progname );
475
+ free_slot = GetIdleSlot (slots , concurrentCons , progname );
477
476
if (!free_slot )
478
477
{
479
478
failed = true;
@@ -491,7 +490,7 @@ vacuum_one_database(const char *dbname, vacuumingOptions *vacopts,
491
490
* errors in GetQueryResult through GetIdleSlot.)
492
491
*/
493
492
run_vacuum_command (free_slot -> connection , sql .data ,
494
- echo , dbname , tabname , progname , parallel );
493
+ echo , tabname , progname , parallel );
495
494
496
495
if (cell )
497
496
cell = cell -> next ;
@@ -504,7 +503,7 @@ vacuum_one_database(const char *dbname, vacuumingOptions *vacopts,
504
503
for (j = 0 ; j < concurrentCons ; j ++ )
505
504
{
506
505
/* wait for all connection to return the results */
507
- if (!GetQueryResult ((slots + j )-> connection , dbname , progname ))
506
+ if (!GetQueryResult ((slots + j )-> connection , progname ))
508
507
goto finish ;
509
508
510
509
(slots + j )-> isFree = true;
@@ -672,8 +671,7 @@ prepare_vacuum_command(PQExpBuffer sql, PGconn *conn, vacuumingOptions *vacopts,
672
671
*/
673
672
static void
674
673
run_vacuum_command (PGconn * conn , const char * sql , bool echo ,
675
- const char * dbname , const char * table ,
676
- const char * progname , bool async )
674
+ const char * table , const char * progname , bool async )
677
675
{
678
676
bool status ;
679
677
@@ -692,10 +690,10 @@ run_vacuum_command(PGconn *conn, const char *sql, bool echo,
692
690
if (table )
693
691
fprintf (stderr ,
694
692
_ ("%s: vacuuming of table \"%s\" in database \"%s\" failed: %s" ),
695
- progname , table , dbname , PQerrorMessage (conn ));
693
+ progname , table , PQdb ( conn ) , PQerrorMessage (conn ));
696
694
else
697
695
fprintf (stderr , _ ("%s: vacuuming of database \"%s\" failed: %s" ),
698
- progname , dbname , PQerrorMessage (conn ));
696
+ progname , PQdb ( conn ) , PQerrorMessage (conn ));
699
697
700
698
if (!async )
701
699
{
@@ -721,7 +719,7 @@ run_vacuum_command(PGconn *conn, const char *sql, bool echo,
721
719
* If an error occurs, NULL is returned.
722
720
*/
723
721
static ParallelSlot *
724
- GetIdleSlot (ParallelSlot slots [], int numslots , const char * dbname ,
722
+ GetIdleSlot (ParallelSlot slots [], int numslots ,
725
723
const char * progname )
726
724
{
727
725
int i ;
@@ -761,7 +759,7 @@ GetIdleSlot(ParallelSlot slots[], int numslots, const char *dbname,
761
759
* We set the cancel-receiving connection to the one in the zeroth
762
760
* slot above, so fetch the error from there.
763
761
*/
764
- GetQueryResult (slots -> connection , dbname , progname );
762
+ GetQueryResult (slots -> connection , progname );
765
763
return NULL ;
766
764
}
767
765
Assert (i != 0 );
@@ -777,7 +775,7 @@ GetIdleSlot(ParallelSlot slots[], int numslots, const char *dbname,
777
775
778
776
(slots + i )-> isFree = true;
779
777
780
- if (!GetQueryResult ((slots + i )-> connection , dbname , progname ))
778
+ if (!GetQueryResult ((slots + i )-> connection , progname ))
781
779
return NULL ;
782
780
783
781
if (firstFree < 0 )
@@ -796,7 +794,7 @@ GetIdleSlot(ParallelSlot slots[], int numslots, const char *dbname,
796
794
* reported and subsequently ignored.
797
795
*/
798
796
static bool
799
- GetQueryResult (PGconn * conn , const char * dbname , const char * progname )
797
+ GetQueryResult (PGconn * conn , const char * progname )
800
798
{
801
799
PGresult * result ;
802
800
@@ -812,7 +810,7 @@ GetQueryResult(PGconn *conn, const char *dbname, const char *progname)
812
810
char * sqlState = PQresultErrorField (result , PG_DIAG_SQLSTATE );
813
811
814
812
fprintf (stderr , _ ("%s: vacuuming of database \"%s\" failed: %s" ),
815
- progname , dbname , PQerrorMessage (conn ));
813
+ progname , PQdb ( conn ) , PQerrorMessage (conn ));
816
814
817
815
if (sqlState && strcmp (sqlState , ERRCODE_UNDEFINED_TABLE ) != 0 )
818
816
{
0 commit comments