India bowled Sri Lanka out for 284 in Galle and lead by 178, then the rain returned
Manav Suthar took 4 for 76 on his second Test. Sonal Dinusha made a maiden hundred and still could not drag Sri Lanka clear for long.
India added two runs to 460 for 9 on Monday morning before Asitha Fernando bowled Prasidh Krishna. The first innings closed at 462, built on Devdutt Padikkal's 167 from Sunday.
Sri Lanka were 90 for 5 not long after, and 99 for 5 by lunch. Mohammed Siraj struck with his second ball. Manav Suthar, in his second Test, finished with 4 for 76. Ravindra Jadeja took 3 for 57.
Sonal Dinusha, 25, playing his fourth Test, and Niroshan Dickwella, back after more than three years, put on 146 for the sixth wicket. Dickwella made 80, his 23rd Test fifty, and was dropped on 20 by KL Rahul before edging Prasidh Krishna to Rishabh Pant. Dinusha reached 100 off 168 balls, with four fours and two sixes, and was lbw to Jadeja next ball. He called it "very special" against "a very good Indian attack."
Sri Lanka were all out for 284. The lead is 178. They avoided the follow-on when Prabath Jayasuriya swept Suthar for four. Rain had already taken 17 overs on day one and limited day two to 43. Monday got through 80.2 of 98 overs before the weather ended it.
India are ahead, and they still need two dry days. A 178-run lead on a turning Galle pitch is the position you want. It is also the position rain can waste. Suthar's four wickets are the other plot: India picked three spinners for this Test, left Bumrah out of the series, and the second-game left-armer just did the job the attack was built for.
Dinusha's hundred keeps Sri Lanka in a conversation they had almost left. He said they are "not yet out of the game." That is true only if the weather and the second innings both behave.
Two days remain in the first Test of two. India will want a declaration position, or a collapse. Sri Lanka will want the new ball to do something Padikkal's day did not allow. Rain has already had a say on all three days.