Batting first, India declared its first innings on 622 for nine and dismissed Sri Lanka for 183 and enforced the follow-on, commanding a 439-run lead. Sri Lanka performed better in the second innings but couldn't prevent an innings defeat when they were bowled out for 386 with more than a day to spare.
India has secured the series by taking a 2-0 lead that includes a 304-run win in the first test in Galle.
Opener Dimuth Karunaratne and No. 3 Kusal Mendis scored centuries and shared 191 runs for the second wicket to lift Sri Lanka's spirits in the second innings.
Mendis scored his third test century and was out for 110 off 135 deliveries, a spell that included 17 boundaries.
Sri Lanka resumed day four on 209 for two and looked determined to make India bat again. Off-spinner Ravichandran Ashwin bowled out Malinda Pushpakumara for 16 when the nightwatchman tried a reverse sweep then left-arm spinner Jadeja opened his account removing the Sri Lankan captain Dinesh Chandimal for just two, caught by Ajinkya Rahane at slip.
Karunaratne was then joined by Angelo Mathews and the pair consolidated the innings going to lunch on 302 for four.
However Jadeja dismissed Karunaratne soon after lunch having him caught by Rahane with the total on 310. Karunaratne made 141 for his sixth test century. He spent more than six hours at the crease, faced 307 deliveries and hit 16 boundaries.
The lower-middle order could not capitalize on the momentum as Sri Lanka lost its last five wickets for 76 runs.
Jadeja finished with 5-152 and collected seven wickets in the match. He also made an unbeaten 70 in India's only innings. His versatile effort won him the player of the match award.
Indian captain Virat Kohli said the he wasn't surprised at Sri Lanka's fightback but was focused on remaining disciplined.
"You expect teams playing test cricket to come out and play like that. Because of the way we got wickets in the first innings sometimes frustration can creep in," he said. "Then you have to give credit to the batters as well, to play like that on a pitch like that; it was high quality batting."
Sri Lanka captain Chandimal said India's big first-innings total put his team on the back foot but he took strength from how they bounced back in the second innings.
"As the captain I am proud of the way the guys played in the second innings so we have to get the positives out of that."
He added that although the series is already lost, his team will now focus on trying to win the third test because a win against the No. 1-ranked side would provide a major confidence boost.
Cheteshwar Pujara (133), Rahane (132), Wriddhiman Saha (67), Lokesh Rahul (57) and Ashwin (54) contributed to India's large total.
The third and final test will begin in Pallekele on Aug. 12.
(AP - yahoo.com)