Algorithms for Recovery and Isolation Exploiting Semantics