made ForEachUser use a read-only cursor, too. there is now only one piece of
authorNathan Bryant <loanshark@uncensored.citadel.org>
Mon, 30 Jul 2001 03:46:14 +0000 (03:46 +0000)
committerNathan Bryant <loanshark@uncensored.citadel.org>
Mon, 30 Jul 2001 03:46:14 +0000 (03:46 +0000)
code in Citadel proper (not the database driver) that needs transactions.
that's check_ref_counts; in other words it's the only thing standing in the way
of a clean implementation of retryable transactions.

citadel/ChangeLog
citadel/user_ops.c

index 8149fe4843fbcbe0a0d922037e6dd458ef93b681..03ed596f47d55fcc64e08c301c27261dee6b04bc 100644 (file)
@@ -1,4 +1,10 @@
  $Log$
+ Revision 580.16  2001/07/30 03:46:14  nbryant
+ made ForEachUser use a read-only cursor, too. there is now only one piece of
+ code in Citadel proper (not the database driver) that needs transactions.
+ that's check_ref_counts; in other words it's the only thing standing in the way
+ of a clean implementation of retryable transactions.
+
  Revision 580.15  2001/07/29 22:24:04  nbryant
   - added a new function to the database interface, cdb_close_cursor().  always
  call this when you're finished with a traversal but didn't bother reading all
@@ -2641,4 +2647,3 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
 
 Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
        * Initial CVS import 
-
index 2cbcb0c8648a240ca21f6fcc256e7eb6dea57abb..86e0166fc5d0da8d750282c06a7c01ee471e2bda 100644 (file)
@@ -1081,7 +1081,6 @@ void ForEachUser(void (*CallBack) (struct usersupp * EachUser, void *out_data),
        struct usersupp usbuf;
        struct cdbdata *cdbus;
 
-       cdb_begin_transaction();
        cdb_rewind(CDB_USERSUPP);
 
        while (cdbus = cdb_next_item(CDB_USERSUPP), cdbus != NULL) {
@@ -1092,7 +1091,6 @@ void ForEachUser(void (*CallBack) (struct usersupp * EachUser, void *out_data),
                cdb_free(cdbus);
                (*CallBack) (&usbuf, in_data);
        }
-       cdb_end_transaction();
 }