aboutsummaryrefslogtreecommitdiff
path: root/contrib/pg_dumplo/lo_import.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/pg_dumplo/lo_import.c')
-rw-r--r--contrib/pg_dumplo/lo_import.c86
1 files changed, 46 insertions, 40 deletions
diff --git a/contrib/pg_dumplo/lo_import.c b/contrib/pg_dumplo/lo_import.c
index 996bdf9e27e..ff8929d6d6e 100644
--- a/contrib/pg_dumplo/lo_import.c
+++ b/contrib/pg_dumplo/lo_import.c
@@ -1,20 +1,20 @@
/* -------------------------------------------------------------------------
* pg_dumplo
*
- * $Header: /cvsroot/pgsql/contrib/pg_dumplo/Attic/lo_import.c,v 1.3 2001/01/24 19:42:45 momjian Exp $
+ * $Header: /cvsroot/pgsql/contrib/pg_dumplo/Attic/lo_import.c,v 1.4 2001/03/22 03:59:10 momjian Exp $
*
* Karel Zak 1999-2000
* -------------------------------------------------------------------------
*/
-#include <stdio.h>
+#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>
-#include <errno.h>
+#include <errno.h>
#include <time.h>
#include <libpq-fe.h>
@@ -22,76 +22,82 @@
#include "pg_dumplo.h"
-extern int errno;
+extern int errno;
-void
-pglo_import(LODumpMaster *pgLO)
+void
+pglo_import(LODumpMaster * pgLO)
{
LOlist loa;
- Oid new_oid;
- char tab[MAX_TABLE_NAME], attr[MAX_ATTR_NAME],
- path[BUFSIZ], lo_path[BUFSIZ],
- Qbuff[QUERY_BUFSIZ];
-
- while(fgets(Qbuff, QUERY_BUFSIZ, pgLO->index)) {
-
+ Oid new_oid;
+ char tab[MAX_TABLE_NAME],
+ attr[MAX_ATTR_NAME],
+ path[BUFSIZ],
+ lo_path[BUFSIZ],
+ Qbuff[QUERY_BUFSIZ];
+
+ while (fgets(Qbuff, QUERY_BUFSIZ, pgLO->index))
+ {
+
if (*Qbuff == '#')
continue;
- if (! pgLO->remove && ! pgLO->quiet)
+ if (!pgLO->remove && !pgLO->quiet)
printf(Qbuff);
-
- sscanf(Qbuff, "%u\t%s\t%s\t%s\n", &loa.lo_oid, tab, attr, path);
+
+ sscanf(Qbuff, "%u\t%s\t%s\t%s\n", &loa.lo_oid, tab, attr, path);
loa.lo_table = tab;
- loa.lo_attr = attr;
+ loa.lo_attr = attr;
- sprintf(lo_path, "%s/%s", pgLO->space, path);
+ sprintf(lo_path, "%s/%s", pgLO->space, path);
/* ----------
* Import LO
* ----------
*/
- if ((new_oid = lo_import(pgLO->conn, lo_path)) == 0) {
-
+ if ((new_oid = lo_import(pgLO->conn, lo_path)) == 0)
+ {
+
fprintf(stderr, "%s: %s\n", progname, PQerrorMessage(pgLO->conn));
-
+
PQexec(pgLO->conn, "ROLLBACK");
fprintf(stderr, "\n%s: ROLLBACK\n", progname);
exit(RE_ERROR);
}
- if (pgLO->remove) {
+ if (pgLO->remove)
+ {
notice(pgLO, FALSE);
- if (lo_unlink(pgLO->conn, loa.lo_oid) < 0)
- fprintf(stderr, "%s: can't remove LO %u:\n%s",
- progname, loa.lo_oid, PQerrorMessage(pgLO->conn));
-
+ if (lo_unlink(pgLO->conn, loa.lo_oid) < 0)
+ fprintf(stderr, "%s: can't remove LO %u:\n%s",
+ progname, loa.lo_oid, PQerrorMessage(pgLO->conn));
+
else if (!pgLO->quiet)
- printf("remove old %u and create new %u\n",
- loa.lo_oid, new_oid);
- notice(pgLO, TRUE);
+ printf("remove old %u and create new %u\n",
+ loa.lo_oid, new_oid);
+ notice(pgLO, TRUE);
}
-
+
pgLO->counter++;
-
+
/* ----------
* UPDATE oid in tab
* ----------
*/
- sprintf(Qbuff, "UPDATE \"%s\" SET \"%s\"=%u WHERE \"%s\"=%u",
+ sprintf(Qbuff, "UPDATE \"%s\" SET \"%s\"=%u WHERE \"%s\"=%u",
loa.lo_table, loa.lo_attr, new_oid, loa.lo_attr, loa.lo_oid);
- /*fprintf(stderr, Qbuff);*/
-
+ /* fprintf(stderr, Qbuff); */
+
pgLO->res = PQexec(pgLO->conn, Qbuff);
-
- if (PQresultStatus(pgLO->res) != PGRES_COMMAND_OK) {
- fprintf(stderr, "%s: %s\n",progname, PQerrorMessage(pgLO->conn));
+
+ if (PQresultStatus(pgLO->res) != PGRES_COMMAND_OK)
+ {
+ fprintf(stderr, "%s: %s\n", progname, PQerrorMessage(pgLO->conn));
PQclear(pgLO->res);
PQexec(pgLO->conn, "ROLLBACK");
fprintf(stderr, "\n%s: ROLLBACK\n", progname);
exit(RE_ERROR);
- }
+ }
PQclear(pgLO->res);
- }
- }
+ }
+}