I understand the 2 phase commit architecture. Let there be 2 slaves and 1 master and the all prepare phases went fine. When the master askede slave 1 to commit, the commit was fine. When master asked slave 2 to commit, it failed. So the master now needs to rollback the entire transaction. My queston is how slave 1 will now rollbakc since it has already committed? From my knowledge, commits are full and final. There maybe save points or journals on disk to restore state but that may require DBA assistance.
Reference on SO - Can a transaction be rolled back after it's committed and connection is closed?