Cheteshwar Pujara chose an apt occasion to profess his never-ending love for red-ball cricket, scoring another classy century as India reached 344/3 against Sri Lanka, here on the first day of the second Test.

On a day, when Pujara played his landmark 50th Test match and was also recommended for the prestigious Arjuna Award, the Saurashtra right-hander remained unbeaten on 128 — his 13th hundred in longest format.

Ajinkya Rahane (103 batting) also roared back to form after a patchy last season hitting his ninth Test ton while adding 211 runs for the unbroken fourth wicket stand as Sri Lankan bowlers once again had a poor day in office.

Comeback man KL Rahul (57) and senior opener Shikhar Dhawan (35) will be cursing their luck, having missed out on a run-feast against a below-par home team attack.

Rahul in-fact looked good for a big one before an unfortunate mix-up led to his run-out. Skipper Virat Kohli (13) was the only batsman to be dismissed cheaply.

Rahul was understandably distraught as he missed out on IPL and Champions Trophy due to shoulder surgery and the first Test here due to viral fever.

However, he said that he wasn't angry with Pujara.

"I wasn't upset with him (Pujara). Run-outs happen, it could have happened with anybody. It could have been him who got run out and it could have been my mistake. I was disappointed because I have been away from the game so long and I didn't want to get out at all," Rahul said at the end of the day's play.

Pujara was an epitome of patience facing 225 balls, hitting 10 fours and a six while Rahane was more attacking in his 168-ball effort, that had 12 boundaries.

En route his second successive hundred in the series, Pujara also completed 4000 Test runs. His sequence of Test scores over the past few Test matches before the current one — 17, 92, 202, 57, 153.

He also became the seventh Indian batsman to score a century in his 50th Test match. The illustrious six before him are Polly Umrigar (1961) Gundappa Viswanath (1979), Kapil Dev (1983), VVS Laxman (2004) and Virat Kohli (2016).

He also became the second Indian after Sachin Tendulkar to score hundreds in three consecutive Tests in Sri Lanka.

In the final session, Pujara-Rahane duo took India across the 250-mark with ease.

Rahane reached his half-century off 83 balls, inclusive of 6 fours. The duo crossed their 150-partnership with ease as India's 300 came up in the 77th over of the day.

Three overs later, he survived a leg before shout via DRS off Malinda Pushpakumara (0-82) but the ball seemed to be going down leg.

Thereafter, Rahane celebrated double hundred partnership with Pujara. When he tapped for a single to complete his hundred, it was more like an elation for Rahane, who got a Test hundred after nearly 10 months. His last hundred was 188 against New Zealand in Indore in 2016.

Rahane survived another lbw shout via DRS off Rangana Herath (1-83), but there was a clear inside edge and umpire Bruce Oxenford had to reverse his decision.

The two batsmen then negotiated until stumps without any further loss.

With India looking for another total in the 600-run range, Rahul feels that the pitch is tailor-made for Ravichandran Ashwin and Ravindra Jadeja.

"It's completely different from the one we played on the last time around. It is on the slower side and I think it will take turn as the day progresses. The more the footmarks, the more turn and purchase Ashwin and Jadeja can get," observed Rahul.

Earlier, during the post-lunch break, Rahul and Pujara brought up their 50-partnership off 112 balls but couldn't extend it for too long as they were involved in a mix-up.

The latter initially said yes to a single but then declined as Rahul was run-out in the 31st over. Overall, he faced 82 balls and hit 7 fours.

Kohli then came to the crease and put on 24 runs for the 3rd wicket with Pujara. It was a good passage of play for Lanka as their bowlers kept things tight.

It resulted in the Indian skipper's dismissal as he chased after a wide delivery off Herath in the 39th over, only for Angelo Mathews to take a sharp catch at slip.

Pujara reached his 16th Test half-century off 112 balls, inclusive of five fours, as India crossed 200 in the 51st over.

While crossing the 4000-run mark in Test cricket, becoming the fourth-quickest Indian batsman to do so after Sunil Gavaskar (81 innings in 43 Tests), Virender Sehwag (81 innings in 49 Tests) and Rahul Dravid (84 innings in 48 Tests). Pujara reached the landmark in his 84th innings and 50th Test.

The Pujara-Rahane duo crossed 50 off 54 balls and then reached their 100-partnership off 104 balls. Rahane impressed in the manner he soaked in pressure after India's twin losses and then stabilised the innings.

In the morning, India had reached 101/1 at lunch thanks to Rahul's half-century. He put on 56 runs with Shikhar Dhawan (35) after India won the toss and opted to bat.

Dhawan and Rahul started with aplomb as Sri Lanka opened the bowling with Nuwan Pradeep and then deployed spin in the form of Herath from the other end. Later, Dimuth Karunaratne (0-10) came on to bowl his slow medium pace and surprised everyone, including the batsmen.

Dhawan was lucky twice as his edges fell short of slips in consecutive overs, off both Pradeep and Herath. He didn’t waste time against the spinner though and hit him for six in only the second over of the match as the wicket turned out to be a true batting beauty.

India were already scoring at a fast clip and the duo brought up their opening stand to 50 runs off just 52 balls.