Mushfiqur Rahim was Monday on course to become the first Bangladeshi to crack a double-century, unbeaten on 198 at lunch on the fourth day of the first Test against Sri Lanka.
The skipper hit one six and 22 fours in his 317-ball knock, as Bangladesh reached 546-5 in reply to Sri Lanka's 570-4 declared after adding 108 to their overnight total of 438-4.
Rahim put on 102 for the unfinished sixth-wicket with Nasir Hossain (61 not out) as Bangladesh frustrated the hosts for a second successive day with their determined batting.
Top-order batsman Mohammad Ashraful missed out on his own double-century when he fell for 190 earlier in the morning session.
Ashraful, playing his first Test in more than a year, added just one to his overnight score when he went for a rash drive off left-arm spinner Rangana Herath and edged a catch to captain Angelo Mathews at first slip.
He occupied the crease for more than a day, hitting one six and 20 fours in his marathon 417-ball knock.
Ashraful, who batted with patience on Sunday, also added a record 267 partnership for the fifth wicket with Rahim. Bangladesh's previous highest in Tests was 200 between Tamim Iqbal and Junaid Siddique against India in Dhaka in 2010.
Ashraful earlier survived a confident appeal for a catch at leg-slip off the first ball of the morning while attempting to reverse-sweep part-time spinner Tillakaratne Dilshan.