Ireland posted their highest-ever Test score of 492 on Tuesday as Paul Stirling and Curtis Campher became only the third and fourth Irishmen to hit centuries in cricket's longest format.
Sri Lanka were 81 without loss in reply before rain stopped play on day two in Galle, 411 runs behind with Nishan Madushka unbeaten on 41 and Dimuth Karunaratne 39 not out.
But the day belonged to Ireland, with Stirling scoring 103 and Campher 111 after captain Andy Balbirnie made 95 on day one. Lorcan Tucker scored a useful 80 while Prabath Jayasuriya, the home hero of the first Test, took five wickets for 174.
Asitha Fernando and Vishwa Fernando took two wickets each. "Scoring a Test hundred is probably something I didn't believe I could achieve," Stirling admitted. "Scoring a hundred in the sub-continent is very special," he told reporters. "So, I am very delighted.