Ulster 19 Scarlets 8
On a balmy night in Belfast, Ulster managed to go top of the table and yet put in a display more akin to what might be seen on a typically foul evening, with a bucketful of chances horribly missed and their error count creeping off the scale.
Not for the first time this season, they somehow overcame their challenging issues and managed another victory to go three from three with the returning Iain Henderson’s 79th-minute try robbing the still winless Scarlets of a deserved losing bonus point.
Ulster led 11-0 at half-time with Louis Ludik’s try a highlight of a patchy enough first half but, crucially, they failed to score any points at all from the 18th minute all the way to the 70th and this even included failing to register for Jake Ball’s sin-binning.
True, they had injuries to contend with as both Stuart McCloskey and his replacement Luke Marshall left early which badly disrupted their backline but, in truth, their performance had already failed to ignite.
Paddy Jackson's return was marked by three key penalties but, he too, drifted in and out of affairs which will give Les Kiss much food for thought going forward.
The Scarlets blew their first scoring chance after Rhys Patchell was badly wide with a fourth minute penalty and this let-off had the desired effect on the home side who regrouped and after several useful sorties upfield, Jackson got Ulster off the mark with a 10th minute penalty shot.
This became 6-0 on 16 minutes after Rodney Ah You won a scrum penalty near the visitors' line with Jackson doing the needful.
Three minutes later and Ulster scored a stunning try in the left corner after a Patchell clearance was taken on the right by Craig Gilroy and the home side attacked from their own half.
Charles Piutau handled, as did Jackson and Olding, before McCloskey provided the assist for Ludik. Jackson, though, missed the tricky conversion. The home side then needed to scramble to avoid Gareth Davies from scoring with Rob Herring – on his 100th appearance – halting the danger.
Ulster were on fire with the ball in hand and it took a last-ditch tackle from Liam Williams, covering from the opposite wing, to prevent Gilroy from scoring five minutes before the half-hour.
With the home side struggling to make the final pass for a third score, they got a break when secondrow Ball was sin-binned for illegal use of his boot at a ruck.
But Ulster were unable to score during those last five minutes of the first half and then had to be content with their 11-0 lead at the turnaround.
They then failed to advance the scoreboard and punishment duly came with Patchell getting the Welsh side off the mark in the 47th minute.
Ulster then turned the screw after a Gilroy take of a high ball but coughed up a penalty under the Scarlets' sticks. This game the Welsh new impetus and only a last-gasp intercept from Piutau prevented a certain looking try for James Davies.
This in turn led to Gilroy racing free down the wing and being taken down by Liam Williams who was deemed not to have taken the Ulsterman down late.
The game then became horribly disjointed with McCloskey and his replacement Luke Marshall going off injured but, finally, Ulster secured a kickable penalty and with just 10 minutes on the clock Jackson slotted the crucial kick.
The Scarlets eventually worked replacement backrower Will Boyde over in the 75th minute with Patchell hitting the upright with the conversion.
They looked good for a losing bonus until Henderson crashed over in the last minute with Jackson also hitting the sticks with his conversion.
ULSTER: C Piutau; C Gilroy, S Olding, S McCloskey, L Ludik; P Jackson, R Pienaar; C Black, R Herring (capt), R Ah You; P Browne, A O'Connor; C Ross, S Reidy, R Diack.
Replacements: I Henderson for Ross (half-time), R Kane for Ah You (52mins), F van der Merwe for Browne (55mins), A Warwick for Black and L Marshall for Olding (both 63mins), R Lyttle for McCloskey (66mins), R Lyttle for L Marshall (67mins), A Lloyd for P Marshall (68 mins).
SCARLETS: A Thomas; L Williams, J Davies, H Parkes, S Evans; R Patchell, G Davies; W Jones, K Owens (capt), W Kruger; J Ball, D Bulbring; L Rawlins, J Davies, J Barclay.
Replacements: P Edwards for Kruger (50 mins), S Williams for A Thomas (53 mins), A Davies for G Davies (56mins), W Boyde for Barclay (65 mins), T Beirne for Rawlins and L Garrett for W Jones (both 70 mins).
Referee: B Whitehouse (WRU).