England on top but milestones must wait for Alastair Cook and fellow batsmen

First Alastair Cook again fell short of 10,000 Test runs - he needs only another five, after his latest attempt - then Alex Hales was out for 83 as he failed to convert a second successive Test half-century into a three-figure score, an achievement which would have made him the only Englishman to complete the full set of hundreds in each international format.

Finally, Joe Root appeared to have a 10th Test century in his sights - but on a day when Sri Lanka's catching was exemplary and often brilliant, he got out to the most straightforward of chances, dismissed for 80.

Even in-form Jonny Bairstow then fell two short of 50 as England had to settle for 310 for six in pursuit of a series-sealing 2-0 lead, after Cook chose to bat first under very cloudy skies and floodlights.

Cook, on 15, got himself to within one scoring shot of his 10,000 - albeit he has hit only 10 sixes in his 10-year Test career to date - before pushing out on the back foot at Suranga Lakmal from round the wicket and edging to second slip, where Dimuth Karunaratne took a smart catch low to his left.

There were two close lbw calls for Hales on 30 against Nuwan Pradeep, who finished with three for 69, but neither would have been overturned on DRS.

Nick Compton needs to contribute significantly at some stage here, on his own admission after his duck at Headingley, as he tries to re-establish his Test career.

He has been criticised in some quarters for being less proactive than he might, but paid for a little adventure on this occasion - taking on the hook against Sri Lanka's quickest bowler Pradeep, and memorably caught just inside the rope by a back-pedalling Lakmal at long-leg.

Hales, one of the architects of England's innings victory in Leeds last week, completed back-to-back half-centuries shortly after lunch when he hit Rangana Herath over long-on for his eighth four.

He was closing on that maiden Test hundred in a stand of 96 with Root until, immediately after hoisting another slow left-armer Milinda Siriwardana straight for his only six, he edged an attempted cut and was wonderfully caught one-handed by Angelo Mathews diving to his right at slip.

Root and James Vince also put themselves in position to cash in, but were unable to do so.

The Yorkshireman was especially annoyed with himself, smacking his pads and bat as he left the pitch fuming for looping a tame catch up to cover off the back foot after Pradeep found a suspicion of extra bounce.

Vince was set too but fell soon afterwards, the second to Siriwardana and another to a brilliant one-handed catch - Lahiru Thirimanne this time taking off to his right at cover to intercept a flat-batted drive at one that turned.

England had further resources, though, in a notably long batting line-up - and Bairstow and Moeen Ali demonstrated their appreciation for minor promotions in the absence of the injured Ben Stokes.

Up a position each, they profited either side of the second new ball in a partnership of 70 only for Bairstow to edge a cut behind just before stumps.

:: England have released Jake Ball to play for Nottinghamshire in their Specsavers County Championship match against Durham at Trent Bridge, after preferring all-rounder Chris Woakes to the uncapped seamer here.

Mark Wood bowled for the first time, during lunch, after a second ankle operation - and England hope he will be able to return for Durham in July.

  Joe Root fell 20 runs short of a 10th Test century
Joe Root fell 20 runs short of a 10th Test century