]> andersk Git - moira.git/commitdiff
line buffer output; don't do it all in one transaction; trap
authormar <mar>
Tue, 16 Jun 1992 11:56:22 +0000 (11:56 +0000)
committermar <mar>
Tue, 16 Jun 1992 11:56:22 +0000 (11:56 +0000)
ingres errors

afssync/migrate.qc

index 1931a2a90f7fde20965092a4d2a975224a0a6f1d..db81efc3437d88361a5d09b36b7ca8cb674df62a 100644 (file)
@@ -4,6 +4,8 @@
 #include <ctype.h>
 
 
+int ingerr();
+
 main(argc, argv)
 int argc;
 char **argv;
@@ -40,8 +42,11 @@ char **argv;
 
     if (debug > 4)
       setenv("ING_SET", "set printqry");
+    setlinebuf(stdout);
+    setlinebuf(stderr);
 
     if (debug) { printf("Opening database..."); fflush(stdout);}
+    IIseterr(ingerr);
 ##  ingres sms
     if (debug) printf("done.\n");
 
@@ -50,7 +55,6 @@ char **argv;
 ##  range of q is #quota
 ##  retrieve (cell = machine.mach_id) where machine.#name="ATHENA.MIT.EDU"
 ##  retrieve (who = users.users_id) where users.login="root"
-##  begin transaction
 
     while (!feof(input)) {
        fgets(buf, sizeof(buf), input);
@@ -129,7 +133,6 @@ char **argv;
 ##         where tblstats.tbl = "quota"
     }
 
-##  end transaction
     if (debug) printf("Done.\n");
     exit(0);
 }
@@ -176,3 +179,19 @@ char *name;
 
     return(buf);
 }
+
+
+ingerr(num)
+int    *num;
+{
+    fprintf(stderr, "An ingres error ocurred, code %d\n", *num);
+    switch (*num) {
+    case 4700:
+       fprintf(stderr, "Deadlock**************************\n");
+       break;
+    default:
+       fprintf(stderr, "Aborting\n");
+       exit(1);
+    }
+    return(0);
+}
This page took 0.043544 seconds and 5 git commands to generate.