The highest ODI score by an England batsman is Robin Smith's unbeaten 167 against Australia at Edgbaston in 1993. Since that was set, every Test-playing nation except Bangladesh have had a batsman make a higher ODI score.

Rohit's new record came in his first international innings since August because of a finger injury.

Taking advantage of some sloppy Sri Lanka bowling and fielding - he was dropped three times, including once on only four - Rohit drove through the covers, hit four straight sixes and five over the leg side.

His third fifty came from only 25 balls, his fourth from 26 and his fifth from only 15, while in a fifth-wicket stand of 128, Robin Uthappa contributed just 16.

India captain MS Dhoni, who did not play in the match, tweeted: "Very well batted Rohit. That's Rohit for everyone, sheer talent. Enjoy and witness the class in action."