India captain Virat Kohli won the toss and elected to bat in the second test against Sri Lanka who made three changes to their side in a bid to level the three-match series on Thursday.
Right-handed opening batsman KL Rahul recovered from flu to replace Abhinav Mukund and will partner southpaw Shikhar Dhawan whose 190 in the first innings of the series opener in Galle set up India's 304-run victory inside four days.
"Looks like a decent wicket to bat, the surface looks nice and rolled in, plus the grass to keep it together as well," Kohli said after winning toss at the Sinhalese Sports Club Ground.
"We just want to make the most of the best of batting conditions on the first two days."
Sri Lanka welcomed back skipper Dinesh Chandimal, who missed the Galle test with pneumonia, and Dhananjaya de Silva while left-arm spinner Malinda Pushpakumara makes his debut.
"It was a tough time for me and my family last 10 days, but much better now," Chandimal said of his fitness.
The home captain admitted he too would have liked to bat first on the dry surface where batting in the fourth innings would be quite a task and demanded better display from his side.
"As a batter, if you get a start, 50-60 runs, you need to score big, like Shikhar did in that game. That's what we need as a batting unit," he said.
"The bowlers need to stick to their plans, and they need to execute them in the middle."
Sri Lanka's spin-heavy selection leaves them with the lone frontline paceman in Nuwan Pradeep.
India: KL Rahul, Shikhar Dhawan, Cheteshwar Pujara, Virat Kohli (captain), Ajinkya Rahane, Ravichandran Ashwin, Hardik Pandya, Wriddhiman Saha, Ravindra Jadeja, Umesh Yadav, Mohammed Shami
Sri Lanka: Upul Tharanga, Dimuth Karunaratne, Kusal Mendis, Dinesh Chandimal (captain), Angelo Mathews, Niroshan Dickwella (wicketkeeper), Dhananjaya de Silva, Dilruwan Perera, Rangana Herath, Malinda Pushpakumara, Nuwan Pradeep