This paper presents a comprehensive review of geometric constraint solving in parametric computer-aided design (CAD), with the major focus on its advances in the last 15 years. Geometric constraint solving can date back to the very first CAD prototype, Sketchpad, in the 1960s, but serious research studies were carried out only after parametric CAD was introduced in the late 1980s. In the following 30-year history of GCS research, two development stages may be identified: (1) the first 15 years (late 1980s -mid 2000s) were primarily devoted to geometric constraint decomposition for well-constrained systems or those with only structural constraint dependencies; and (2) the second 15 years (late 2000s -now) have seen research efforts shifted towards classification criteria and decomposition algorithms for general constraint systems (with and without non-structural constraint dependencies). Most existing reviews focused on the first 15 years. The problem researched in the second 15 years is, however, equally important, considering that a manually specified constraint system usually contains under-and over-constrained parts, and that such parts must be correctly detected and resolved before numerical solving can work. In this regard, this review paper covers both stages and will discusses what has already been made possible for handling general constraint systems, what developments can be expected in the near future, and which areas remain problematic.