I am trying to understand RAC and have some questions. Appreciate anyone who can help me understand

1) The TAF in a RAC setup does not support transaction failover (DMLs will be rolled back), but only Query failover is supported. Why is this? If it can have the query image and using the instance which is alive, why cant it retain the DML image also and provide failover? Can someone please explain?

2) When a Query failover happens, I believe the select statment is re-issued. In this case will the SCN be different from the original. If so, how is read consistency maintained.