Changeset 656 for trunk/server/lib/tdb/common/transaction.c
- Timestamp:
- Nov 8, 2011, 6:50:31 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/server/lib/tdb/common/transaction.c
r456 r656 1020 1020 1021 1021 tdb_trace(tdb, "tdb_transaction_commit"); 1022 1022 tdb_trace(tdb, "@todo: tdb_transaction_error"); 1023 1023 if (tdb->transaction->transaction_error) { 1024 1024 tdb->ecode = TDB_ERR_IO; … … 1028 1028 } 1029 1029 1030 1030 tdb_trace(tdb, "@todo: tdb_transaction_nesting"); 1031 1031 if (tdb->transaction->nesting != 0) { 1032 1032 tdb->transaction->nesting--; … … 1034 1034 } 1035 1035 1036 tdb_trace(tdb, "@todo: tdb_null_transaction"); 1036 1037 /* check for a null transaction */ 1037 1038 if (tdb->transaction->blocks == NULL) { … … 1040 1041 } 1041 1042 1043 tdb_trace(tdb, "@todo: tdb_transaction_prepare"); 1042 1044 if (!tdb->transaction->prepared) { 1043 1045 int ret = _tdb_transaction_prepare_commit(tdb); … … 1048 1050 methods = tdb->transaction->io_methods; 1049 1051 1052 tdb_trace(tdb, "@todo: tdb_transaction perform all the writes"); 1053 1050 1054 /* perform all the writes */ 1051 1055 for (i=0;i<tdb->transaction->num_blocks;i++) { … … 1062 1066 length = tdb->transaction->last_block_size; 1063 1067 } 1064 1065 1068 if (methods->tdb_write(tdb, offset, tdb->transaction->blocks[i], length) == -1) { 1066 1069 TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_commit: write failed during commit\n")); … … 1083 1086 tdb->transaction->num_blocks = 0; 1084 1087 1088 tdb_trace(tdb, "@todo: tdb_transaction ensure the new data is on disk"); 1085 1089 /* ensure the new data is on disk */ 1086 1090 if (transaction_sync(tdb, 0, tdb->map_size) == -1) { … … 1100 1104 mtime changes when a transaction completes */ 1101 1105 #ifdef HAVE_UTIME 1106 tdb_trace(tdb, "@todo: tdb_transaction utime"); 1102 1107 utime(tdb->name, NULL); 1103 1108 #endif 1104 1109 1110 tdb_trace(tdb, "@todo: tdb_transaction need repack"); 1105 1111 need_repack = tdb->transaction->need_repack; 1106 1112 1107 1113 /* use a transaction cancel to free memory and remove the 1108 1114 transaction locks */ 1115 tdb_trace(tdb, "@todo: tdb_transaction cancel"); 1109 1116 _tdb_transaction_cancel(tdb); 1110 1117 1111 1118 if (need_repack) { 1119 tdb_trace(tdb, "@todo: tdb_transaction repack"); 1112 1120 return tdb_repack(tdb); 1113 1121 }
Note:
See TracChangeset
for help on using the changeset viewer.