summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bin/pg_dump/pg_backup_archiver.c26
-rw-r--r--src/bin/pg_dump/pg_backup_custom.c27
-rw-r--r--src/bin/pg_dump/pg_backup_files.c37
-rw-r--r--src/bin/pg_dump/pg_backup_tar.c33
-rw-r--r--src/bin/pg_dump/pg_dumpall.c10
5 files changed, 95 insertions, 38 deletions
diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c
index c35d5436fdb..16ed5f0e313 100644
--- a/src/bin/pg_dump/pg_backup_archiver.c
+++ b/src/bin/pg_dump/pg_backup_archiver.c
@@ -15,7 +15,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.147 2007/10/13 20:18:41 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.148 2007/10/28 21:55:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -799,8 +799,8 @@ SortTocFromFile(Archive *AHX, RestoreOptions *ropt)
/* Setup the file */
fh = fopen(ropt->tocFile, PG_BINARY_R);
if (!fh)
- die_horribly(AH, modulename, "could not open TOC file: %s\n",
- strerror(errno));
+ die_horribly(AH, modulename, "could not open TOC file \"%s\": %s\n",
+ ropt->tocFile, strerror(errno));
while (fgets(buf, sizeof(buf), fh) != NULL)
{
@@ -957,7 +957,14 @@ SetOutput(ArchiveHandle *AH, char *filename, int compression)
}
if (!AH->OF)
- die_horribly(AH, modulename, "could not open output file: %s\n", strerror(errno));
+ {
+ if (filename)
+ die_horribly(AH, modulename, "could not open output file \"%s\": %s\n",
+ filename, strerror(errno));
+ else
+ die_horribly(AH, modulename, "could not open output file: %s\n",
+ strerror(errno));
+ }
return sav;
}
@@ -1512,12 +1519,17 @@ _discoverArchiveFormat(ArchiveHandle *AH)
{
wantClose = 1;
fh = fopen(AH->fSpec, PG_BINARY_R);
+ if (!fh)
+ die_horribly(AH, modulename, "could not open input file \"%s\": %s\n",
+ AH->fSpec, strerror(errno));
}
else
+ {
fh = stdin;
-
- if (!fh)
- die_horribly(AH, modulename, "could not open input file: %s\n", strerror(errno));
+ if (!fh)
+ die_horribly(AH, modulename, "could not open input file: %s\n",
+ strerror(errno));
+ }
cnt = fread(sig, 1, 5, fh);
diff --git a/src/bin/pg_dump/pg_backup_custom.c b/src/bin/pg_dump/pg_backup_custom.c
index 923acce55a9..5791ec78128 100644
--- a/src/bin/pg_dump/pg_backup_custom.c
+++ b/src/bin/pg_dump/pg_backup_custom.c
@@ -19,7 +19,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_custom.c,v 1.39 2007/08/06 01:38:14 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_custom.c,v 1.40 2007/10/28 21:55:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -169,23 +169,38 @@ InitArchiveFmt_Custom(ArchiveHandle *AH)
if (AH->mode == archModeWrite)
{
if (AH->fSpec && strcmp(AH->fSpec, "") != 0)
+ {
AH->FH = fopen(AH->fSpec, PG_BINARY_W);
+ if (!AH->FH)
+ die_horribly(AH, modulename, "could not open output file \"%s\": %s\n",
+ AH->fSpec, strerror(errno));
+ }
else
+ {
AH->FH = stdout;
-
- if (!AH->FH)
- die_horribly(AH, modulename, "could not open output file \"%s\": %s\n", AH->fSpec, strerror(errno));
+ if (!AH->FH)
+ die_horribly(AH, modulename, "could not open output file: %s\n",
+ strerror(errno));
+ }
ctx->hasSeek = checkSeek(AH->FH);
}
else
{
if (AH->fSpec && strcmp(AH->fSpec, "") != 0)
+ {
AH->FH = fopen(AH->fSpec, PG_BINARY_R);
+ if (!AH->FH)
+ die_horribly(AH, modulename, "could not open input file \"%s\": %s\n",
+ AH->fSpec, strerror(errno));
+ }
else
+ {
AH->FH = stdin;
- if (!AH->FH)
- die_horribly(AH, modulename, "could not open input file \"%s\": %s\n", AH->fSpec, strerror(errno));
+ if (!AH->FH)
+ die_horribly(AH, modulename, "could not open input file: %s\n",
+ strerror(errno));
+ }
ctx->hasSeek = checkSeek(AH->FH);
diff --git a/src/bin/pg_dump/pg_backup_files.c b/src/bin/pg_dump/pg_backup_files.c
index 6520ca227aa..47a4ddd77cb 100644
--- a/src/bin/pg_dump/pg_backup_files.c
+++ b/src/bin/pg_dump/pg_backup_files.c
@@ -20,7 +20,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_files.c,v 1.33 2007/08/06 01:38:15 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_files.c,v 1.34 2007/10/28 21:55:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -121,12 +121,19 @@ InitArchiveFmt_Files(ArchiveHandle *AH)
" normal use. Files will be written in the current working directory.\n");
if (AH->fSpec && strcmp(AH->fSpec, "") != 0)
+ {
AH->FH = fopen(AH->fSpec, PG_BINARY_W);
+ if (AH->FH == NULL)
+ die_horribly(NULL, modulename, "could not open output file \"%s\": %s\n",
+ AH->fSpec, strerror(errno));
+ }
else
+ {
AH->FH = stdout;
-
- if (AH->FH == NULL)
- die_horribly(NULL, modulename, "could not open output file: %s\n", strerror(errno));
+ if (AH->FH == NULL)
+ die_horribly(NULL, modulename, "could not open output file: %s\n",
+ strerror(errno));
+ }
ctx->hasSeek = checkSeek(AH->FH);
@@ -139,12 +146,19 @@ InitArchiveFmt_Files(ArchiveHandle *AH)
{ /* Read Mode */
if (AH->fSpec && strcmp(AH->fSpec, "") != 0)
+ {
AH->FH = fopen(AH->fSpec, PG_BINARY_R);
+ if (AH->FH == NULL)
+ die_horribly(NULL, modulename, "could not open input file \"%s\": %s\n",
+ AH->fSpec, strerror(errno));
+ }
else
+ {
AH->FH = stdin;
-
- if (AH->FH == NULL)
- die_horribly(NULL, modulename, "could not open input file: %s\n", strerror(errno));
+ if (AH->FH == NULL)
+ die_horribly(NULL, modulename, "could not open input file: %s\n",
+ strerror(errno));
+ }
ctx->hasSeek = checkSeek(AH->FH);
@@ -242,7 +256,8 @@ _StartData(ArchiveHandle *AH, TocEntry *te)
#endif
if (tctx->FH == NULL)
- die_horribly(AH, modulename, "could not open output file: %s\n", strerror(errno));
+ die_horribly(AH, modulename, "could not open output file \"%s\": %s\n",
+ tctx->filename, strerror(errno));
}
static size_t
@@ -286,7 +301,8 @@ _PrintFileData(ArchiveHandle *AH, char *filename, RestoreOptions *ropt)
#endif
if (AH->FH == NULL)
- die_horribly(AH, modulename, "could not open input file: %s\n", strerror(errno));
+ die_horribly(AH, modulename, "could not open input file \"%s\": %s\n",
+ filename, strerror(errno));
while ((cnt = GZREAD(buf, 1, 4095, AH->FH)) > 0)
{
@@ -507,7 +523,8 @@ _StartBlob(ArchiveHandle *AH, TocEntry *te, Oid oid)
#endif
if (tctx->FH == NULL)
- die_horribly(AH, modulename, "could not open large object file for input: %s\n", strerror(errno));
+ die_horribly(AH, modulename, "could not open large object file \"%s\" for input: %s\n",
+ fname, strerror(errno));
}
/*
diff --git a/src/bin/pg_dump/pg_backup_tar.c b/src/bin/pg_dump/pg_backup_tar.c
index 8be6e5edf78..380e0184ef4 100644
--- a/src/bin/pg_dump/pg_backup_tar.c
+++ b/src/bin/pg_dump/pg_backup_tar.c
@@ -16,7 +16,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_tar.c,v 1.60 2007/08/29 16:31:36 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_tar.c,v 1.61 2007/10/28 21:55:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -172,15 +172,22 @@ InitArchiveFmt_Tar(ArchiveHandle *AH)
*/
if (AH->mode == archModeWrite)
{
-
if (AH->fSpec && strcmp(AH->fSpec, "") != 0)
+ {
ctx->tarFH = fopen(AH->fSpec, PG_BINARY_W);
+ if (ctx->tarFH == NULL)
+ die_horribly(NULL, modulename,
+ "could not open TOC file \"%s\" for output: %s\n",
+ AH->fSpec, strerror(errno));
+ }
else
+ {
ctx->tarFH = stdout;
-
- if (ctx->tarFH == NULL)
- die_horribly(NULL, modulename,
- "could not open TOC file for output: %s\n", strerror(errno));
+ if (ctx->tarFH == NULL)
+ die_horribly(NULL, modulename,
+ "could not open TOC file for output: %s\n",
+ strerror(errno));
+ }
ctx->tarFHpos = 0;
@@ -210,14 +217,20 @@ InitArchiveFmt_Tar(ArchiveHandle *AH)
}
else
{ /* Read Mode */
-
if (AH->fSpec && strcmp(AH->fSpec, "") != 0)
+ {
ctx->tarFH = fopen(AH->fSpec, PG_BINARY_R);
+ if (ctx->tarFH == NULL)
+ die_horribly(NULL, modulename, "could not open TOC file \"%s\" for input: %s\n",
+ AH->fSpec, strerror(errno));
+ }
else
+ {
ctx->tarFH = stdin;
-
- if (ctx->tarFH == NULL)
- die_horribly(NULL, modulename, "could not open TOC file for input: %s\n", strerror(errno));
+ if (ctx->tarFH == NULL)
+ die_horribly(NULL, modulename, "could not open TOC file for input: %s\n",
+ strerror(errno));
+ }
/*
* Make unbuffered since we will dup() it, and the buffers screw each
diff --git a/src/bin/pg_dump/pg_dumpall.c b/src/bin/pg_dump/pg_dumpall.c
index 59f1ddbcfba..319f2952281 100644
--- a/src/bin/pg_dump/pg_dumpall.c
+++ b/src/bin/pg_dump/pg_dumpall.c
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
*
- * $PostgreSQL: pgsql/src/bin/pg_dump/pg_dumpall.c,v 1.93 2007/10/13 20:18:41 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/pg_dump/pg_dumpall.c,v 1.94 2007/10/28 21:55:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -398,8 +398,8 @@ main(int argc, char *argv[])
OPF = fopen(filename, PG_BINARY_W);
if (!OPF)
{
- fprintf(stderr, _("%s: could not open the output file \"%s\"\n"),
- progname, filename);
+ fprintf(stderr, _("%s: could not open the output file \"%s\": %s\n"),
+ progname, filename, strerror(errno));
exit(1);
}
}
@@ -1210,8 +1210,8 @@ dumpDatabases(PGconn *conn)
OPF = fopen(filename, PG_BINARY_A);
if (!OPF)
{
- fprintf(stderr, _("%s: could not re-open the output file \"%s\"\n"),
- progname, filename);
+ fprintf(stderr, _("%s: could not re-open the output file \"%s\": %s\n"),
+ progname, filename, strerror(errno));
exit(1);
}
}