Barisan Nasional's S. Sothinathan beat Barisan Alternatif's Ruslan Kassim in the Teluk Kemang by-election by a majority of 5,972, a seat won by BN in last November's poll with a 9,942-vote majority.
Sothinathan picked up 24,500 votes, while Ruslan bagged 18,528 votes.
Ruslan won in Lukut, one of the five state constituencies which makes up the Teluk Kemang parliamentary seat, and an area badly affected by the Nipah virus outbreak two years ago.
In last year's poll, KeADILan candidate N. Gopalakrisnan lost Lukut by a majority of 285. In this round, however, Ruslan won by a majority of 297.
During the election campaign, the government had actively wooed the pig farmers, who have suffered lost of family members, livelihood and property due to the outbreak.
Recently, 468 pig farmers received their long awaited compensation of RM70 for every pig culled during the deadly outbreak.
Health Minister Chua Jui Meng told malaysiakini that some RM 31 million had been given to the farmers.
BA also had a slight edge over BN in postal votes, where Ruslan bagged 1,743 votes against Sothinathan's 1,625.
According to the voters records, Teluk Kemang has 66,646 voters, with Malays accounting for about 45.44 percent, Chinese 33.23 percent, Indians 20.64 percent, and others 0.7 percent.
Today's by-election was held following the death of the BN's S.A Anpalagan, who was Health Ministry's parliamentary secretary.