Some quick notes and thoughts:
- yes, multiple threads in the same TX are fine.
- we can create different XID formats as long as we change the format id (check out how JTS does this with different types of interposition).
- leave this until you come back from paternity - it's an EAP 6.1 thing.
- if we are getting into circularities then we're moving back to a general distributed transaction protocol and we already agreed that that would require JTS.