…moved from activerecord-jdbc-adapter 1.2.1
* remove duplicate decrement on the transaction_pointer during rollback * remove unnecessary code to handle decrementing the transaction_pointer prior to rollback which caused transactions following the first rollback to fail to decrement the transaction_pointer * change cleanup() unset the collection instead of reinitializing it to an empty array, so we don't keep numerous empty arrays in memory if the transaction pointer gets off * add test assertions to ensure that the transaction pointer is always returned to zero and the transaction-specific in-memory objects have been cleared at the end of each test
this bug were causing odd things in postgresql. especially in tests.
…t previous successful transactions from screwing up unsuccessful transactions
…handling the error, activerecord re-raises so outer code has a chance to see the error. However, active_callback was acting as a sink, catching exceptions and not re-throwing to prevent active record from triggering a rollback on an already committed savepoint. This submission makes an attempt to save commit progress in a non-transient manner, so exceptions can be passed to active record while allowing rollbacks to be skipped if a savepoint has already been released. The immediate benefit are unit/functional tests properly reporting errors that occur during after_commit callbacks triggered during a release_savepoint call.
…nately, the begin/rescue around active record transactions explicity catches Exception descendent classes, which means an exception not descending from StandardError (i.e. the ones thrown by mocha) will create an inconsistency between after_callback and activerecord.
…e tests pass with AR 1.2. Still not perfect, mind you.
…'s not go making assumptions.
These callbacks are the after_commit equivalent of ActiveRecord's after_save callback. i.e. they are called both on create and save but not destroy.
…ere destroyed in the transaction. You can now use after_commit as an equivalent for after_save." This reverts commit a9d6023. Conflicts: lib/after_commit/connection_adapters.rb