Sanath Jayasuriya's 122, his 20th one-day international century, provided the platform for Sri Lanka's 46-run victory against England on Tuesday that saw them go 2-0 up in the series.
England, set a record 319 to win - their best second innings victory chase had been the 306 for five, needing 305, they achieved against Pakistan at Karachi in 2000/01 - were bowled out for 273 as they went down to a twelfth defeat in 16 one-day internationals.
Together with Sri Lanka captain Mahela Jayawardene (66), Jayasuriya put on 160 for the second-wicket as the visitors built on their 20-run series-opening victory at Lord's on Saturday.
And Jayasuriya then cemented his man-of-the-match status by bowling England top scorers Kevin Pietersen (73) and Paul Collingwood (55), taking three for 51 in all with his left-arm spin as Sri Lanka won with 20 balls to spare.
England, who conceded a record 42 extras at Lord's, gave away 33 this time around, including 21 wides as opposed to their 23 at the weekend.
Stephen Harmison led the attack well with three for 31 from 10 overs but fellow quick Sajid Mahmood saw his seven overs cost 80 runs - three runs shy of Derek Pringle's record of 83 for the most conceded by an England bowler in a one-day international.
Sri Lanka's score was their best against England in a one-day international, surpassing the 303 for nine they made at Adelaide in 1999.