Hermes Software transactional memory for two-phase commit This library is tend to be used with potential multiply transaction managers, distributed systems for example