]> andersk Git - moira.git/blobdiff - dbck/members.pc
Change a bunch of
[moira.git] / dbck / members.pc
index 2cfdf027a4a99e5de21c6352156063d79ef117af..e0678179feeaafbe236ada29e3a9617546757576 100644 (file)
@@ -45,6 +45,7 @@ struct hash *lists, *members;
 void fix_member(), display_member();
 int debug = 0, records = 0;
 
+char *db = "moira/moira";
 
 main(argc, argv)
 int argc;
@@ -55,10 +56,10 @@ char **argv;
 #ifdef DEBUG
     if (argc > 1)
       debug = atoi(argv[1]);
-#endif DEBUG
+#endif /* DEBUG */
 
 /*  ingres sms */
-    EXEC SQL CONNECT moira;
+    EXEC SQL CONNECT :db;
 /*  begin transaction */
 /*  range of m is imembers */
     /* No equivalent */
@@ -71,7 +72,7 @@ char **argv;
 #ifdef DEBUG
     if (debug > 3)
       hash_step(lists, display_member, NULL);
-#endif DEBUG
+#endif /* DEBUG */
     verify_members();
     fix_members();
 
@@ -84,13 +85,13 @@ char **argv;
 /*     end transaction */
        EXEC SQL COMMIT WORK;
     } else {
-#endif FIXERRORS
+#endif /* FIXERRORS */
        printf("Aborting transaction\n");
 /*     abort */
        EXEC SQL ROLLBACK WORK;
 #ifdef FIXERRORS
     }
-#endif FIXERRORS
+#endif /* FIXERRORS */
 
 /*  exit */
     /* No equivalent (?) */
@@ -128,7 +129,7 @@ load_members()
       if (debug > 5)
        printf("Working on list %d member %s %d refc %d\n",
               list_id, mtype, member_id, ref_count);
-#endif DEBUG
+#endif /* DEBUG */
       if ((m = find_member(list_id, member2id(mtype[0], member_id))) == NULL) {
          m = allocmember();
          m->list_id = list_id;
@@ -157,7 +158,7 @@ load_members()
       if (debug > 5)
        printf("%d ancestors, %d descendants\n",
               chainlen(ance), chainlen(desc));
-#endif DEBUG
+#endif /* DEBUG */
       for (ancestors = ance; ancestors; ancestors = ancestors->next) {
          ma = ancestors->member;
          for (descendants = desc; descendants; descendants=descendants->next) {
@@ -175,14 +176,14 @@ load_members()
              if (debug > 5)
                printf("Checking list %d member %d, ref = %d\n",
                       ma->list_id, id2id(md->member_id), ref);
-#endif DEBUG
+#endif /* DEBUG */
              if (m1 = find_member(ma->list_id, md->member_id)) {
                  m1->frefc += ref;
 #ifdef DEBUG
                  if (debug > 5)
                    printf("set refc to %d (%d) on list %d, member %d\n",
                           m1->frefc, ref, m1->list_id, id2id(m1->member_id));
-#endif DEBUG
+#endif /* DEBUG */
                  if (ma == m && md == m)
                    m1->fdirect = 1;
              } else {
@@ -194,7 +195,7 @@ load_members()
                  if (debug > 5)
                    printf("set new refc to %d (%d) on list %d, member %d\n",
                           m1->frefc, ref, m1->list_id, id2id(m1->member_id));
-#endif DEBUG
+#endif /* DEBUG */
                  sq_save_data(sq, m1);
              }
          }
@@ -222,7 +223,7 @@ verify_members()
 #ifdef DEBUG
     int ref0, ref1, ref2, ref3, refg;
     int db0, db1, db2, db3, dbg;
-#endif DEBUG
+#endif /* DEBUG */
 
     /* verify members from database */
     printf("Verifying members\n");
@@ -230,7 +231,7 @@ verify_members()
 #ifdef DEBUG
     ref0 = ref1 = ref2 = ref3 = refg = 0;
     db0 = db1 = db2 = db3 = dbg = 0;
-#endif DEBUG
+#endif /* DEBUG */
     sq = sq_create();
 /*  retrieve (list_id = m.#list_id, member_id = m.#member_id,
  *           mtype = m.member_type, ref_count = m.#ref_count,
@@ -253,7 +254,7 @@ verify_members()
        case 3: db3++; break;
        default: dbg++;
        }
-#endif DEBUG
+#endif /* DEBUG */
       m = find_member(list_id, member2id(mtype[0], member_id));
       if (m == NULL) {
          m = allocmember();
@@ -274,7 +275,7 @@ verify_members()
            case 3: ref3++; break;
            default: refg++;
            }
-#endif DEBUG
+#endif /* DEBUG */
          m->frefc -= ref_count;
          if (m->frefc != 0)
            errbref++;
@@ -294,7 +295,7 @@ verify_members()
        printf("Found  refs: %d 0; %d 1; %d 2; %d 3; %d > 3\n",
               ref0, ref1, ref2, ref3, refg);
     }
-#endif DEBUG
+#endif /* DEBUG */
 }
 
 
@@ -332,9 +333,11 @@ fix_members()
  *             and m.member_type = mtype */
        EXEC SQL DELETE FROM imembers WHERE list_id = :list_id AND
            member_id = :member_id AND member_type = :mtype;
-       EXEC SQL INQUIRE_SQL(:rowcount = rowcount); 
-       printf("  %d rows deleted\n", rowcount);
-#endif FIXERRORS
+       rowcount = sqlca.sqlerrd[2];
+       if (rowcount > 0)
+         printf("%d entr%s deleted\n", rowcount, 
+                rowcount == 1 ? "y" : "ies");
+#endif /* FIXERRORS */
     }
     if (errmis > 0)
       printf("Added %d missing records\n", errmis);
@@ -484,9 +487,11 @@ int *errmis;
            EXEC SQL INSERT INTO imembers (list_id, member_id, 
                member_type, ref_count, direct)
              VALUES (:list_id, :member_id, :mtype, :ref_count, :dflag);
-           EXEC SQL INQUIRE_SQL(:rowcount = rowcount); 
-           printf("  %d rows added\n", rowcount);
-#endif FIXERRORS
+           rowcount = sqlca.sqlerrd[2];
+           if (rowcount > 0)
+             printf("%d entr%s added\n", rowcount, 
+                    rowcount == 1 ? "y" : "ies");
+#endif /* FIXERRORS */
            continue;
        }
        printf("Member record has bad ref_count and/or direct flag, fixing\n");
@@ -514,9 +519,11 @@ int *errmis;
            SET ref_count=ref_count+:ref_count, direct = :dflag 
            WHERE list_id = :list_id AND member_id = :member_id AND
                member_tpe = :mtype;
-       EXEC SQL INQUIRE_SQL(:rowcount = rowcount); 
-       printf("  %d rows fixed\n", rowcount);
-#endif FIXERRORS
+       rowcount = sqlca.sqlerrd[2];
+       if (rowcount > 0)
+         printf("%d entr%s updated\n", rowcount, 
+                rowcount == 1 ? "y" : "ies");
+#endif /* FIXERRORS */
     }
 }
 
@@ -582,4 +589,4 @@ struct member_list *l;
     }
 }
 
-#endif DEBUG
+#endif /* DEBUG */
This page took 0.049459 seconds and 4 git commands to generate.