Andrey Rublev stunned defending champion Jannik Sinner in a rain-interrupted quarter-final at the Omnium Banque Nationale presented by Rogers.
Sinner appeared to battle a right-hip injury throughout the match, which may have hampered his performance.
Rublev showcased his mental toughness, overcoming a strong second set from Sinner to clinch the match.
Intense rallies, a rain delay, and a dramatic third set defined the match.
Rublev's win moves him ahead of Stefanos Tsitsipas in the race for the Nitto ATP Finals.
Rublev advances to the semi-finals where he will face Matteo Arnaldi.
Sinner's eight-match winning streak on hard courts comes to an end.