~drizzle-trunk/drizzle/development

* Fixes drizzled's atomics:

- fetch_and_add() was actually add_and_fetch() - fixed to have both methods correct
- compare_and_swap() was incorrect for all traits classes.  Fixed to return a bool
true only when the supplied value is actually swapped
- fixes increment() and decrement() methods and operator+=() in outer atomics class
template to call proper add_and_fetch() methods on traits classes
- Now that above are fixed, removed the hacks in Query_id and TransactionLog to
have query ID and the new transactoin ID start properly at 1.

* Transaction messages sent over replication stream now use
a real transaction ID, managed by drizzled::TransactionServices.  Previously, 
the Query_id was being used, resulting in SELECT statements incrementing the
transaction ID.

* Added a test case to ensure that DDL ops are given a transaction ID and SELECT
ops do not increment the transaction ID.

The transaction ID will be paired with a channel ID to become the global
transaction identifier.  ReplicationServices will manage the pairing of
channel and transaction ID and understand how far a particular subscriber
node has applied.
Filename Latest Rev Last Changed Committer Comment Size
..
checked.h 1122.2.10 15 years ago Monty Taylor Fixed all of the include guards. 11.4 KB Diff Download File
core.h 1122.2.10 15 years ago Monty Taylor Fixed all of the include guards. 8 KB Diff Download File
unchecked.h 1122.2.10 15 years ago Monty Taylor Fixed all of the include guards. 8.3 KB Diff Download File