*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.124 2006/02/13 21:30:19 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.125 2006/02/14 23:30:43 tgl Exp $
*
*-------------------------------------------------------------------------
*/
dumpTimestamp(AH, "Started on", AH->createDate);
if (ropt->single_txn)
- ahprintf(AH, "BEGIN;\n\n");
+ {
+ if (AH->connection)
+ StartTransaction(AH);
+ else
+ ahprintf(AH, "BEGIN;\n\n");
+ }
/*
* Establish important parameter values right away.
}
if (ropt->single_txn)
- ahprintf(AH, "COMMIT;\n\n");
+ {
+ if (AH->connection)
+ CommitTransaction(AH);
+ else
+ ahprintf(AH, "COMMIT;\n\n");
+ }
if (AH->public.verbose)
dumpTimestamp(AH, "Completed on", time(NULL));
void
StartRestoreBlobs(ArchiveHandle *AH)
{
- if (AH->connection)
- StartTransaction(AH);
- else
- ahprintf(AH, "BEGIN;\n\n");
+ if (!AH->ropt->single_txn)
+ {
+ if (AH->connection)
+ StartTransaction(AH);
+ else
+ ahprintf(AH, "BEGIN;\n\n");
+ }
AH->blobCount = 0;
}
void
EndRestoreBlobs(ArchiveHandle *AH)
{
- if (AH->connection)
- CommitTransaction(AH);
- else
- ahprintf(AH, "COMMIT;\n\n");
+ if (!AH->ropt->single_txn)
+ {
+ if (AH->connection)
+ CommitTransaction(AH);
+ else
+ ahprintf(AH, "COMMIT;\n\n");
+ }
ahlog(AH, 1, "restored %d large objects\n", AH->blobCount);
}