日期:2014-05-16 浏览次数:20401 次
1. (A行)prepared commit T100A 2. (A行)a帐号-¥100 3. (A行)记录跨行交易日志T100A 4. (A行-->B行)报文(T100:给b帐号+¥100) 5. (B行)prepared commit T100B 6. (B行)b帐号+¥100 7. (B行)记录跨行交易日志T100B 8. (B行)commit T100B 9. (B行-->A行)报文(T100:true) 10. (A行)只有当接收到(T100:false)的报文时才进行回滚事务T100A 11. (A行)commit T100A 12. (A行)查看B行的跨行交易日志与A行对应的日志做比较,判断交易是否成功,以B行为准,如果B行的操作失败则给a帐号+¥100
1. (A行)prepared commit T100A 2. (A行)a帐号-¥100 3. (A行)记录跨行交易日志T100A 4. (A行-->B行)报文(T100:给b帐号+¥100) 5. (A行)commit T100A 6. (B行)prepared commit T100B 7. (B行)b帐号+¥100 8. (B行)记录跨行交易日志T100B 9. (B行-->A行)报文(T100:true) 10. (B行)commit T100B 11. (A行)当接收到(T100:false)的报文时操作a帐号+¥100(也就是这一步是编程式回滚,不能通过数据库的事务来实现) 12. (A行)查看B行的跨行交易日志与A行对应的日志做比较,判断交易是否成功, 以B行为准,如果日志上发现B行的操作失败或者没有这个事务号则给a帐号+¥100