When networks are partitioned, many transaction management systems assume either consistency or unbounded inconsistency. It is desirable that the systems allow bounded inconsistency to allow high degree of availability and consistency.
In this thesis, a transaction processing strategy is proposed, which allows bounded inconsistency. For each partition, this strategy assigns data items at different levels of correctness based on partition environment. Then, using the data items that are assigned the levels, transactions are classified into one of the four classes: normal, pessimistic, optimistic, and nonexecutable. Transactions of the normal class and pessimistic classes are committed in spite of network partition, whereas transactions of the optimistic class may be committed or backed out when partitions are reconnected. Conflicts are detected at the reconnection time using a serialization graph, and are resolved by backing out transactions of the optimistic class. Transactions of the pessimistic and optimistic classes are promoted. Therefore, the system can report to the users the correctness for the transactions that are in the optimistic class before the system is reconnected as a single partition.