Handle Commit exception and cleanup.

- Catch the Commit exception in match().
- Use self.parent.commit_result to pass the info. Is there a better way?