Abstract. Local search algorithms have been very successful for solving constraint satisfaction problems (CSP). However, a major weakness has been that local search is unable to detect unsolvability and is thus not suitable for highly constrained or overconstrained problems. In this paper, we present a scheme where a local search algorithm, the breakout algorithm, is used to identify hard or unsolvable subproblems. This is used in two ways. The first to generate a fail-first variable order for a systematic backtrack search that proves unsolvability or solves the problem efficiently. The combination of the two methods is a complete algorithm. On randomly generated coloring problems, the method performs extremely well, in particular, for tightly and overconstrained CSPs. The second way of using the breakout algorithm is as a filter for identifying possibly unsolvable subproblems. We present an efficient algorithm that guarantees to find the smallest unsolvable subproblem by systemati...