Rishabh Pant and Shreyas Iyer will be ruing missed hundreds and a chance to put India in complete control of the second Test in Dhaka on Friday after Bangladesh took quick wickets to keep alive their chances of levelling the series.
Star all-rounder Shakib al-Hasan stepped up to claim three wickets in the final session on day two just when his side could see the game slipping away.
India finished their innings on 314, squeaking out an 87-run lead, but would have expected a much bigger tally when they resumed after tea on 226-4 with both Pant and Iyer having posted half-centuries.
Bangladesh reduced that lead to 80 by stumps, ending the day without losing a wicket with openers Najmul Hossain Shanto on five and Zakir Hasan on two.
Pant and Iyer hit aggressive half-centuries to take India past Bangladesh’s first-innings total but both fell agonisingly short of their hundreds as India lost their last six wickets for 61 runs.
Their partnership came to an end after they guided India to 253, with Pant hitting 93 off 104 balls and Iyer amassing his 87 off 105 deliveries.
Pant had been at his best, hitting five sixes and seven fours in his 11th Test fifty, before edging Mehidy Hasan for a sharp catch behind the stumps.
That wicket had a cascade effect as skipper Shakib got rid of Axar Patel (four) for his first wicket and then had Iyer out lbw two overs later.
Iyer rode his luck in an innings that included 10 fours and two sixes. He was dropped by Mehidy on 19 off Taskin and then escaped again when wicketkeeper Nurul Hasan missed a simple stumping chance off Shakib.
The first session of the day belonged to Bangladesh as Taijul had KL Rahul (10) and Shubman Gill (20) out lbw in successive overs before he dismissed Cheteshwar Pujara for 24.
India captain Rahul was initially declared not out but the decision was overturned on review.
Gill walked off after he was struck plumb in front by Taijul in the next over.
The left-arm spinner then broke the fledging 34-run partnership between Pujara and Kohli just as the duo looked set.
Pujara, who reached 7,000 Test runs during the innings, was caught by Mominul Haque at forward short leg.
Umesh Yadav and Ravichandran Ashwin claimed four wickets apiece on day one as India bowled out Bangladesh for a modest total in the first innings.
India won the first Test of the two-match series by 188 runs in Chittagong.
© Agence France-Presse