Connacht secured their third Heineken Cup victory when they beat Zebre 25-20 at the Sportsground to finish their European campaign on a high.
While Connacht won the match and finish on a positive note the match could have ended on a low as Zebre's comeback almost spoiled the party for the hosts.
The Irish province ensured their second season in Europe's top competition finished with as many victories as defeats as they edged home.
Zebre gave as good as they got in Galway and overturned a 13-point deficit to lead 20-19 with 12 minutes remaining but Connacht kept their composure to stop the debutants from registering a maiden triumph in 18 domestic and European fixtures.
The first half was all about the boot, with a quartet of three pointers from Dan Parks handing the hosts a 12-6 lead at the interval.
The former Scotland playmaker struck successful penalties after 10 minutes, 15 minutes and 33 minutes, with a 25th-minute drop goal from the veteran the other scoring method in an opening half that failed to really fire.
Zebre's points also came from the tee, as former Waratahs No10 Daniel Halangahu slotted penalties after 12 and 27 minutes to keep his side in touch.
A penalty try five minutes after the restart gave Connacht clear water at 19-6 but Zebre refused to give up the fight and Halangahu cut the gap to 10 with his third penalty six minutes later.
Zebre battered away at the Connacht line with 56 minutes gone but Luca Martinelli'sindecisive show and go at the base of a close-range ruck led to turnover ball as the replacement scrum-half let the hosts off the hook.
But it didn't take long for Zebre to gain the reward their hard work deserved as Giovanbattista Venditti's brilliant break from halfway saw them claim the try they looked like registering moments earlier.
Kieran Marmion's decision to shoot out of the defensive line too quickly left Connacht exposed in midfield and Venditti burst through before offloading to create a two-on-one which Ruggero Trevisan finished off in the left-hand corner with 59 minutes gone.
The TMO was called into action to check whether Tiernan O'Halloran's last-gasp tackle had forced his opposite man into touch but the decision rightly went in Zebre's favour as the gap was cut to just two points.
Halangahu missed the chance to level affairs as he sent his touchline conversion wide of the near post but Parks was also off target with a penalty attempt four minutes later.
Zebre took the lead after 68 minutes when Halangahu kept his nerve from 10 metres to the left of the posts and 30 metres out but their one-point advantage was shortlived as a 40-metre effort from Parks pushed Connacht back in front three minutes later.
A second drop goal from Parks sealed the win - and took his tally to 20 - with six minutes left to ensure Connacht finished just three points shy of second-placed Biarritz Olympique in Pool 3.
Final Score Connacht 25 (12) Zebre 20 (6)
Penalties: Parks 5
Penalties: Halangahu 5
Referee: Pascal Gauzere (Fra),
Assistant ref: Jean-Luc Rebollai (Fra),
Assistant ref: Vincent Blasco (Fra),
TMO: Daniel Irazoqui (Fra),
Citing Commissioner: Roberto Carra (Ita)
Connacht Rugby: Robbie Henshaw; Tiernan O'Halloran, Eoin Griffin, David McSharry, Fetu'u Vainikolo; Dan Parks, Kieran Marmion; Brett Wilkinson, Jason Harris-Wright, Nathan White (c), Michael Swift, Mike McCarthy, Michael Kearney, Johnny O'Connor, Andrew Browne.
Replacements: Ethienne Reynecke, James Cooney, Ronan Loughney, David Gannon, Eoghan Grace, Paul O'Donohoe, Miah Nikora, Danie Poolman.
Zebre: Tito Tebaldi; Giovanbattista Venditti, Roberto Quartaroli, Matteo Pratichetti, Ruggero Trevisan; Daniel Halangahu, Alberto Chillon; Salvatore Perugini, Davide Giazzon, Luca Redolfini, Micheal van Vuuren, Josh Sole, Emiliano Caffini, Mauro Bergamasco (c), Filippo Ferrarini.
Replacements: Carlo Festuccia, Matias Aguero, Dave Ryan, Nicola Belardo, Andrea Manici, Luca Martinelli, Alberto Chiesa, Samuele Pace.
With thanks to ERC Rugby.