Sri Lanka beat New Zealand by 14 runs under the Duckworth-Lewis method on Sunday to finally achieve a positive result on a rain-scarred tour.
When the players and umpires were driven from the field by heavy drizzle for the second time at the Pallekele International Cricket Stadium, Sri Lanka were for 118 for three off 22.5 overs.
Their score placed them ahead of the par score of 104 after New Zealand had totaled 250 for six from their 50 overs.
It was a frustrating end to proceedings but at least it meant one side secured victory after the first two matches of the tour were abandoned because of rain.
Thursday's first scheduled ODI, also in Pallekele, was called off without a ball being bowled and before that the two sides took part in a Twenty20 International in which only 16 overs were completed.
The rain that ended the action on Sunday evening followed a dry and mostly sunny day and two preceding days during which no rain fell at all.
In the play that was possible on Sunday, New Zealand captain Ross Taylor top-scored in his side's total with a hard-hit 72 from 62 balls despite not feeling well either before or during his innings.
"I vomited before I batted and I'm still not feeling 100 percent but, hopefully, I'll get back to the hotel and get right for Tuesday," he told broadcasters at the post-match presentation ceremony.
"We knew it was the case that Duckworth-Lewis tends to favor the side batting second and we gave it a good show but we just weren't quite good enough."
BJ Watling, who later deputised behind the stumps for Brendon McCullum, who missed the match because of a sore back, weighed in with 55 for New Zealand, who were also without all-rounder Jacob Oram, another back injury victim.
Sri Lanka captain Mahela Jayawardena anchored his side's response with an unbeaten 43 from 49 balls including five fours. He added 59 for the third wicket with former captain Tillakaratne Dilshan (37) who became the third player to reach 1,000 ODI runs for 2012 after team mate Kumar Sangakarra and India's Virat Kohli.
"It was probably a good toss to lose," said Jayawardena. "After the first shower we had a chat inside the dressing rooms and said we should stay ahead of the Duckworth-Lewis mark."
Lasith Malinga was man-of-the-match after taking two for 39.
Sunday's match and the next match on Tuesday were switched to Pallekele after heavy rain in Colombo left the original venue, the R Premadasa Stadium, under water.