Okay, hacking complete. I've got a patch that extends the Clojure STM so that it will make appropriate callouts to an external transaction manager that cause the STMs transaction to be atomic/consistent/ isolated with respect to an external transaction, using a "dosync- external" macro. Note that this is not the same as XA support. The Clojure STM is in charge of the transaction as a whole, not the external transaction manager. (Among other things, this means that transactions can not span multiple transaction managers. You'll get an exception if you try.) The external transaction manager must implement the clojure.lang.ITransactionManager interface, which means that to use any given external transaction manager you will need to implement a small adapter to that interface, and instantiate it appropriately.
This code is highly experimental, and should not be used for production purposes. Contents may have settled during shipping. All models over 18. Where should I send the patch? --Dave Griffith --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---