Racing-Métro broke the hearts of 14-man Montpellier with a narrow 19-16 victory in a thrilling encounter.
Montpellier looked dead and buried at the break, trailing 7-3 and having lost hooker Charles Geli to a red card for his involvement in a punch-up.
But Fabien Galthié's side fought back, and even led with ten minutes remaining, only for two late Jonathan Sexton penalties to give Racing the win - a cruel finale for the hosts.
Racing were the more dangerous side early on and scored the first try through Alexandre Dumoulin.
The centre collected the ball from Sexton before benefiting from an apparent obstruction in midfield go straight through and dot down under the posts.
Montpellier had earlier had the chance to get on the scoreboard but François Trinh-Duc found the post, but on his second attempt he made no mistake to bring the score back to 7-3.
The game was getting a little bit fractious and on the half-hour there was an incident in midfield with a Racing player getting away with a flurry of punches on a prone Montpellier opponent.
Referee Salim Attalah penalised Luke Charteris, who was not actually involved in the ruck, and the Welsh international was in the bin soon after when he collapsed a maul from the resulting lineout.
Montpellier were not able to take advantage, despite looking the more threatening, and Racing held out for the ten minutes with a man down.
Still the game was bubbling and on half-time it exploded as a massive punch-up was sparked by a late scrum. Geli, bloodied and bruised, was picked out as the culprit for throwing a number of punches and starting the melee, and was given his marching orders as the teams returned to the changing rooms.
At the start of the second half Montpellier, despite being a man down, piled on the pressure, and earned two penalties in quick succession, both converted by Trinh-Duc to put his side in front for the first time.
Racing responded with a long-range drop goal from new recruit Johan Goosen, although the South African's effort seemed to drop short of the bar.
Replacement Benoit Paillaugue had the chance to put Montpellier back in front, but his penalty attempt drifted just wide.
However Montpellier didn't have long to wait to take the lead, with their trademark offloading game allowing them to score their first try of the night.
After an interminable period of possession Robert Ebersohn showed quick feet to beat two men before feeding the ball to Timoci Nagusa who sprinted over. Paillaugue's conversion stretched the lead to three.
The game had become incredibly open, with Montpellier looking the more comfortable as a result, but Racing managed to level the scores after a Rene Ranger failed to roll away at a ruck, Sexton slotting the penalty.
And with three minutes remaining Sexton added another penalty when a seven-man Montpellier scrum crumbled, to give Racing a vital away win.
Pens: Trinh-Duc 3
Red cards: Geli
Pens: Sexton 2
Yellow cards: Charteris
Montpellier: 15 Benjamin Fall, 14 Timoci Nagusa, 13 Anthony Tuitavake, 12 Robert Ebersohn, 11 Rene Ranger, 10 François Trinh-Duc, 9 Jonathan Pélissié, 8 Alex Tulou, 7 Alexandre Bias, 6 Fulgence Ouedraogo (c), 5 Thibaut Privat, 4 Sitaleki Timani, 3 Nicolas Mas, 2 Charles Geli, 1 Misha Nariashvili.
Replacements: 16 Mikael Ivaldi, 17 David Attoub, 18 Tom Donnelly, 19 Robins Tchale-Watchou, 20 Benoit Paillaugue, 21 Antoine Battut, 22 Pierre Bérard, 23 Na'ama Leleimalefaga.
Racing Métro: 15 Brice Dulin, 14 Adrien Plante, 13 Henry Chavancy, 12 Alexandre Dumoulin, 11 Yoan Audrin, 10 Jonathan Sexton, 9 Mike Phillips, 8 Antonie Claassen, 7 Bernard Le Roux, 6 Wenceslas Lauret, 5 Francois van der Merwe (c), 4 Luke Charteris, 3 Luc Ducalcon, 2 Virgile Lacombe, 1 Julien Brugnaut.
Replacements: 16 Jeremie Maurouard, 17 Davit Khinchagishvili, 18 Thibault Dubarry, 19 Camille Gerondeau, 20 Maxime Machenaud, 21 Johan Goosen, 22 Jamie Roberts, 23 Brian Mujati.
Referee: Salim Attalah